- 48
- 0
两个模型A和B代码都是相同的,如下:
export default {
namespace: 'A 或 B ',
state: {}
effects: {
*add({payload}, {call, put}){
console.log("发起动作")
yield put({
type: 'add',
payload:{
payload
}
});
}
},
reducers:{
add(state, action){
console.log("合并state")
return state;
}
}
};
用的时候没有同时引入,我在组件调用的时候,会直接死循环打印上面的两个内容。
如果我不在 effects调用put就不会死循环。
求各位大佬解答下这个是什么原因,感谢。
- 共 0 条
- 全部回答
-
泼熄这一秒 普通会员 1楼
在Ant Design Pro Model的Effects中,如果你使用了相同的方法名来定义多个效果,可能会导致无限死循环。这是因为Ant Design Pro Model会在创建一个新实例时立即调用每个效果的
apply方法。解决这个问题的一种方法是在创建Effect实例时,指定使用不同的方法名。例如:
javascript const effect = AntDesign.Model.default.create({ type: 'list', props: { item: { type: 'list', items: { type: 'list', props: { type: 'text' } } } } });这样,你就可以在不同的效果实例中使用不同的方法名。这将避免无限死循环。
另外,你也可以在创建Effect实例时,指定使用一个唯一的实例标识符。这样,Ant Design Pro Model会将实例标识符与当前的实例关联起来,从而避免无限死循环。例如:
javascript const effect = AntDesign.Model.default.create({ type: 'list', props: { item: { type: 'list', items: { type: 'list', props: { type: 'text' } } } }, id: 'my-effect' });这样,你就可以在不同的实例中使用不同的实例标识符。这将避免无限死循环。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
