mapDispatchToPropsがディスパッチ関数でラップされたアクションクリエータを正しく返すように、単体テストを書くべきですか?ReduxでmapDispatchToPropsの単体テストをどのように行う必要がありますか?
私は現在、テストのためにモカと酵素を使用しています。
ここは私のコンテナコンポーネントです。
import { Component } from 'react'
import { connect } from 'react-redux'
import Sidebar from '/components/Sidebar'
import Map from '/components/Map'
import * as LayerActions from '../actions/index'
// Use named export for unconnected component (for tests)
export const App = ({layers, actions}) => (
<div>
<Sidebar LayerActions={actions} />
<Map />
</div>
)
export const mapStateToProps = state => ({
layers: state.layers
})
export const mapDispatchToProps = dispatch => ({
actions: bindActionCreators(LayerActions, dispatch)
})
// Use default export for the connected component (for app)
export default connect(mapStateToProps, mapDispatchToProps)(App)
ワンダフルです。本当にありがとう。 2番目の引数としてオブジェクトリテラルのアクションを渡すと、Connectによって注入された注入されたアクションをサイドバーの子コンポーネントに渡すにはどうすればよいですか? – therewillbecode
一般的には、アクション関連の小道具をまとめて渡す必要があります。それは明示的( 'const {firstAction} = props')であるかもしれませんし、catch-all(' const {layers、... allOtherProps} = props')のより多くのものでもあります。いずれにしても、それらを抽出してサイドバーにそれらの小道具をレンダリングします。 – markerikson