#javascript #immer.js
#javascript #immer.js
Вопрос:
Eslint всегда жалуется на правило Unallowed reassignment
from fp/no-mutation
для базовой immer
конструкции:
const nextState = produce(baseState, draftState => {
draftState.push({todo: "Tweet about it"})
draftState[1].done = true
})
Поскольку draftState всегда изменяется, как можно избежать этой неприятности?
Ответ №1:
Вы можете добавить исключение для правила fp /no-mutation в конфигурации ESLint.
"fp/no-mutation": [
"error",
{
exceptions: [{ object: "draftState" }],
},
]
Примечание: Этого было бы достаточно только для случая, когда изменяющийся объект является «draftState». Так что вам нужно было бы иметь это в виду 🙂
Ссылка: https://github.com/jfmengels/eslint-plugin-fp/blob/master/docs/rules/no-mutation.md