fluxxor向一个flux实例添加一组以上的操作
fluxxor add more than 1 set of actions to a flux instance
我已经使用Fluxxor设置了一个React应用程序,我正在尝试使用一个可以获得多个存储和操作的控制器视图,类似于这个旋转木马示例。
然而,在fluxor示例中,它使用了多个存储,但只使用了一组操作。我想知道如何通过多个动作。
var React = require('react/addons'),
Fluxxor = require("fluxxor"),
authorActions = require("../actions/author-actions"),
authorStore = require("../stores/author-store"),
productActions = require("../actions/product-actions"),
productStore = require("../stores/product-store");
var stores = { ProductStore: new productStore(), AuthorStore: new authorStore() };
// how do I combine my actions here?
var flux = new Fluxxor.Flux(stores, actions);
Fluxxor支持动态添加操作:
var flux = new Fluxxor.Flux(stores);
flux.addActions(authorActions);
flux.addActions(productActions);
如果名称空间没有冲突,您也可以使用Underscore的extend:之类的东西将它们合并在一起
var actions = _.extend({}, authorActions, productActions);
或Object.assign
(或polyfill):
var actions = Object.assign({}, authorActions, productActions);
添加到@BinaryMuse答案。我喜欢为我的操作命名,这样在任何通用命名的操作上都不会发生冲突。
只需为每个名称空间初始化一个带有密钥的对象:
...
var actions = { author: authorActions, product: productActions };
var flux = new Fluxxor.Flux(stores, actions);
然后用它们的名称空间调用它们:
this.getFlux().actions.author.add("Aldus", "Huxley", ...);
相关文章:
- fluxxor向一个flux实例添加一组以上的操作
- 我们怎样才能将内含子J用于一组特定的元素
- 使用linq.js按当前日期订购一组momentjs日期
- 正则表达式,从一组关键字中获取奇数
- 创建一组元素JointJS
- 如何在javascript中获取一组复选框值
- 一组(共组..)
- 使用JS将页面中的每个字母设置为随机颜色.为什么在页面的每个打开标记之前总是有一组额外的span标记
- 在一组复选框中,一次只允许选择一个
- 为什么在fabricjs中可选择的不适用于一组圆
- 如何在不刷新页面的情况下每次单击一组选项卡时刷新视图内容窗格
- 从一组具有相同起始和结束的所有段落的段落中提取包含特定字符串的段落
- 简单的Javascript文本编辑器或一组函数
- 基于日期范围的一组日期范围内的天数
- jQuery中的函数来操作一组id
- 是否可以将一组类存储在内存中,以便我可以在页面上显示它们之前对它们执行操作?(JQuery)
- 如何在不影响其他项目的情况下操作一组列表组项目
- 单击“操作”按钮时,每次单击此按钮时显示一组字段
- 循环遍历一组名称,每隔一段时间采取操作
- 启用提交按钮之前的一组操作