使用 Electronjs/SerialPort 和 React/Redux 的数组绑定
Posted
技术标签:
【中文标题】使用 Electronjs/SerialPort 和 React/Redux 的数组绑定【英文标题】:Array Binding with Electronjs/SerialPort & React/Redux 【发布时间】:2018-06-01 23:17:34 【问题描述】:几天以来我一直在努力使用减速器,即使在状态看起来正确的操作之后,React 组件也不会更新......
if (getPorts.test(action))
var service = new SerialService();
var dataResult = new Array<any>();
service.listDevices(function (err: any, data: Array<any>)
data.forEach((item) =>
dataResult.push( ...item )
);
);
return
...state,
ports: dataResult
;
我尝试了很多方法,有或没有扩展运算符(使用 object.assign())
据我了解,可能是由于列出设备的回调而丢失了一些东西,我猜我没有很好地管理我应该如何更新 UI。
有什么想法或建议吗?
【问题讨论】:
【参考方案1】:我假设上面的代码 sn-ps 是 reducer 的一部分。 Reducer 应该始终同步,您不能期望回调中的异步更新能够正确更新渲染周期中的连接组件。尝试寻找支持异步操作的 redux 中间件。
【讨论】:
谢谢你的回答,你说得对,这只是我reducer的一部分。我会看看中间件。以上是关于使用 Electronjs/SerialPort 和 React/Redux 的数组绑定的主要内容,如果未能解决你的问题,请参考以下文章
在使用加载数据流步骤的猪中,使用(使用 PigStorage)和不使用它有啥区别?