Reactjs 您如何在Redux中组织活动?
我有一个名为actions的文件夹,其中有一个名为index.js的文件,到目前为止,我一直在将我的所有操作都放在这个文件夹中。现在事情变得一团糟,我想知道如何最好地把事情分开。有什么好的策略吗?你把它们放在不同的档案里吗?按…分组。。。?或者您只是将它们作为部分保存在不同的文件中,然后将它们包含在索引文件中,然后始终只导入索引文件 您可以使用bindActionCreators 小例子:Reactjs 您如何在Redux中组织活动?,reactjs,architecture,redux,flux,Reactjs,Architecture,Redux,Flux,我有一个名为actions的文件夹,其中有一个名为index.js的文件,到目前为止,我一直在将我的所有操作都放在这个文件夹中。现在事情变得一团糟,我想知道如何最好地把事情分开。有什么好的策略吗?你把它们放在不同的档案里吗?按…分组。。。?或者您只是将它们作为部分保存在不同的文件中,然后将它们包含在索引文件中,然后始终只导入索引文件 您可以使用bindActionCreators 小例子: import React, { Component } from 'react'; import { c
import React, { Component } from 'react';
import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
import * as filterActions from '../actions/filterActions';
import * as writeActions from '../actions/writeActions';
class TestComponent extends Component {
render(){
return <div>Test</div>;
}
}
function mapDispatchToProps(dispatch){
return {
filterActions: bindActionCreators(filterActions, dispatch),
writeActions: bindActionCreators(writeActions, dispatch)
};
}
export default connect(null, mapDispatchToProps)(TestComponent);
这将在mapDispatchToProps的返回对象中使用的键处向组件的道具添加操作。因此,如果您想使用filterActions中的操作,您可以使用这个.props.filterActions.actionName.将所有内容放在一个action.js中会很快失控,还原器也是如此 这实际上取决于个人品味,但我看到的趋势似乎是将应用程序分为多个功能,每个功能都有自己的动作,每个功能都有一个减缩器 然后,应用程序树的每一级都将合并简化程序,您的存储最终将看起来像文件夹结构,从而更容易查找内容。特性通常包含actions.js、reducer、js、index.jsx,还可能包含该特性的style.scss/css。这样做的好处是,在某个时候删除该特性非常容易,而不必到处挖掘死代码 您没有提到如何捆绑代码。当使用ex Webpack构建时,这种方法很好