Immer.js 和 eslint fp/no-mutation
Immer.js and eslint fp/no-mutation
Eslint 总是抱怨 Unallowed reassignment
来自 fp/no-mutation
基本 immer
构造的规则:
const nextState = produce(baseState, draftState => {
draftState.push({todo: "Tweet about it"})
draftState[1].done = true
})
由于 draftState 总是在变化,如何避免这种烦恼?
您可以在 ESLint 配置中为 fp/no-mutation 规则添加例外。
"fp/no-mutation": [
"error",
{
exceptions: [{ object: "draftState" }],
},
]
注意:这足以满足变异对象为"draftState"的情况。所以你必须记住这一点:)
参考: https://github.com/jfmengels/eslint-plugin-fp/blob/master/docs/rules/no-mutation.md
Eslint 总是抱怨 Unallowed reassignment
来自 fp/no-mutation
基本 immer
构造的规则:
const nextState = produce(baseState, draftState => {
draftState.push({todo: "Tweet about it"})
draftState[1].done = true
})
由于 draftState 总是在变化,如何避免这种烦恼?
您可以在 ESLint 配置中为 fp/no-mutation 规则添加例外。
"fp/no-mutation": [
"error",
{
exceptions: [{ object: "draftState" }],
},
]
注意:这足以满足变异对象为"draftState"的情况。所以你必须记住这一点:)
参考: https://github.com/jfmengels/eslint-plugin-fp/blob/master/docs/rules/no-mutation.md