ESLint Rule
anonymous tuple mode를 함수/컴포넌트 내부에서 호출하지 못하도록 막습니다.
왜 필요한가
createRxState(defaultValue)는 호출할 때마다 새 store를 만듭니다. 모듈 최상위에서 export해서 쓰는 건 안전하지만, React 컴포넌트 내부에서 호출하면 렌더 경로마다 새 store가 만들어질 수 있습니다.
ESLint flat config
js
const globalRxState = require("@byeolnaerim/global-rx-state/eslint-rules");
module.exports = [
{
plugins: {
"global-rx-state": globalRxState,
},
rules: {
"global-rx-state/no-tuple-global-rx-state-in-function": "error",
},
},
];Legacy rulesdir
bash
eslint src --rulesdir node_modules/@byeolnaerim/global-rx-state/eslint-rules