我有这个:
var UseOfState = class extends React.Component {
constructor(props) {
super(props);
this.state = {isCheck: true};
this.toggleCheckbox = this.toggleCheckbox.bind(this);
}
toggleCheckbox () {
console.log('checkbox triggered');
this.setState = ({isCheck: !this.state.isCheck});
}
render () {
console.log('render');
var msg;
if(this.state.isCheck) {
msg = 'checked';
console.log(this.state.isCheck);
} else {
msg = 'unchecked';
console.log(this.state.isCheck);
}
return (
<div>
<input type="checkbox" onChange={this.toggleCheckbox} defaultChecked={this.state.isCheck}/>
<h3>Check box is {msg}</h3>
</div>
);
}
}
ReactDOM.render(<UseOfState/>,document.getElementById('root'));
我收到此错误:
TS2538:类型“唯一符号”不能用作索引类型。
有人知道该错误是什么吗?我使用的是tsc版本 3.1.6 。
答案 0 :(得分:0)
我糟糕的解决方法:
const bar: Record<any, string> = {};
const FOO = Symbol('foo');
// eslint-disable-next-line @typescript-eslint/no-explicit-any
bar[FOO as any] = 'sad';