React 中的 Mobx 和 d3 Stacked Bar
Mobx and d3 Stacked Bar in React
https://codesandbox.io/s/charming-ives-3jnnn
根据链接的 codesandbox,我有一个条形图,可以计算来自 4 个不同传感器的一个月内的轨迹。我遵循了本教程:https://github.com/muratkemaldar/using-react-hooks-with-d3/tree/15-stacked-bar-chart 效果很好。现在我已经将我的很多代码转换为使用 mobx,但我正在努力让它工作。我让它使用 useState 但它似乎一直想刷新。
如何编码 'onChange' 部分?
onChange={(e) => {
if (e.target.checked) {
setKeys(Array.from(new Set([...keys, key])));
} else {
setKeys(keys.filter((_key) => _key !== key));
}
所以,商店里的setKeys
应该是这样的,并不是说它不是箭头函数:
setKeys(key, checked) {
if (checked) {
this.keys = Array.from(new Set([...this.keys, key]));
} else {
this.keys = this.keys.filter((_key) => _key !== key);
}
}
然后你就这样使用它:
onChange={(e) => {
store.setKeys(key, e.target.checked);
}}
Codesandbox:https://codesandbox.io/s/httpsWhosebugcomquestions65207564-0odbx?file=/src/App.js:1657-1758
https://codesandbox.io/s/charming-ives-3jnnn
根据链接的 codesandbox,我有一个条形图,可以计算来自 4 个不同传感器的一个月内的轨迹。我遵循了本教程:https://github.com/muratkemaldar/using-react-hooks-with-d3/tree/15-stacked-bar-chart 效果很好。现在我已经将我的很多代码转换为使用 mobx,但我正在努力让它工作。我让它使用 useState 但它似乎一直想刷新。 如何编码 'onChange' 部分?
onChange={(e) => {
if (e.target.checked) {
setKeys(Array.from(new Set([...keys, key])));
} else {
setKeys(keys.filter((_key) => _key !== key));
}
所以,商店里的setKeys
应该是这样的,并不是说它不是箭头函数:
setKeys(key, checked) {
if (checked) {
this.keys = Array.from(new Set([...this.keys, key]));
} else {
this.keys = this.keys.filter((_key) => _key !== key);
}
}
然后你就这样使用它:
onChange={(e) => {
store.setKeys(key, e.target.checked);
}}
Codesandbox:https://codesandbox.io/s/httpsWhosebugcomquestions65207564-0odbx?file=/src/App.js:1657-1758