【发布时间】:2019-12-03 11:21:16
【问题描述】:
我想在多个地方访问构造函数中的状态值。 当我在构造函数中使用 console.log(this) 时,我可以看到可以访问特定值,但是当我 console.log this.state 时,我得到未定义。
这就是我想象中的工作方式(我想访问 CSSValue 中的状态):
constructor(props) {
super(props);
this.state = {
colors: {
SheetColor: "#FFFFFF"
},
CSSValue: '.qvt-sheet{\n background:' + $(this.state.colors.SheetColor) + '!important;\n}'
}
}
但是当我运行这段代码时:
constructor(props) {
super(props);
this.state = {
colors: {
SheetColor: "#FFFFFF"
},
CSSValue: '.qvt-sheet{\n background:' + $(console.log(this)) + '!important;\n}'
}
}
然后我在控制台中得到这个:
但是当我将 console.log 更改为 console.log(this.state) 时,它会打印 undefined。
我可以访问例如this.props 没有任何问题。但不知何故,我无法在 console.log 中访问 this.state。
【问题讨论】:
-
为什么字符串中有'$'符号?它有什么作用?
标签: javascript reactjs