是否有一种特殊的方法可以在条件语句中重新分配let
以避免导致prefer-const
eslint
错误?
我的代码:
let jsx = [];
if (a === b) {
jsx.push(
<div>
xxx
</div>
);
}
jsx.push(<div>yyy</div>);
===更新=== 抱歉令人困惑,实际上这不是重新分配操作。
答案 0 :(得分:2)
您可以使用const
因为您没有重新分配jsx
变量,只需按下它指向的数组:
const jsx = [];
if (a === b) {
jsx.push(
<div>
xxx
</div>
);
}
jsx.push(<div>yyy</div>);
答案 1 :(得分:1)
你没有重新分配jsx
变量,你只是在修改它。可以修改使用const
声明的变量,因此您只需将let
替换为const
。
来自MDN:
const
声明会创建对值的只读引用。 不意味着它保持的值是不可变的,只是无法重新分配变量标识符。例如,如果内容是一个对象,这意味着对象本身仍然可以被更改。
示例:
const arr = [];
arr.push(42);
console.log(arr);