Javascript класс: в чем разница между полями publi c и полями - PullRequest
1 голос
/ 09 января 2020

В классе JS в чем разница между:

class MyClass extends components {
    constructor(props) {
        super(props);
        this.state = {toto:"toto"}
    }
}

и

class MyClass extends components {
    state = {toto:"toto"}
}

[Edit] Это то же самое: Спасибо за ваши ответы!

Ответы [ 2 ]

2 голосов
/ 09 января 2020

Объявление такого состояния без конструктора:

state = {}

Называется полями классов, предложение TC39 в настоящее время находится на стадии 3, когда я последний раз проверял, но оно широко распространено в сообществе React.

По сути, в настоящее время он не является частью javascript, но компиляторы, такие как babel, разрешают этот синтаксис и компилируют его в действительный код javascript.

1 голос
/ 09 января 2020

Без разницы, это просто синтакти c сахар

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...