Используя ES6 + синтаксис в React/React родной, переменная foo
, когда она определена вне конструктора каким-то образом превращается в переменную экземпляра при вызове с this.
. Мое утверждение верно? Почему это даже работает, когда не создается экземпляр в конструкторе? Вот соответствующий Реагировать Родной фрагмент кода:ES6 + экземпляр свойство экземпляра за пределами конструктора
class myComponent extends Component {
constructor() {
super();
}
foo = "bar";
render() {
return (<View>{ this.foo }</View>);
}
}
This discussion about ES7 property initializers показывает, как переменная state
будет заметно использоваться таким образом в React/React Native.
До сих пор связанные с переполнением стека дискуссии я прочитал через here и here не смог ответить на этот вопрос для меня ..
"* Почему это даже работает, когда не конкретизируется в конструкторе *?" - потому что поля класса являются ужасно идея – Bergi
Связанный пост [здесь] (https://stackoverflow.com/q/37788342/465053). – RBT