Реакт-конструктор не работает

-8

рассмотрим этот класс реагирования

var sentence = "The FBI has managed to unlock the iPhone";

define(["./UserInput","./Statistic","./RandomWords","react", "react-dom"],
(UserInput,Statistic,RandomWords,React, ReactDOM) => {

var Root = React.createClass({
constructor() {
super();
console.log("Hey");
this.state={sentenct: sentence }

}

render: function() {
return (
<div >

<h1>Welcome to our game</h1>
<UserInput/>
<RandomWords NewWord={ sentence }/>
<Statistic speed={"Salman"} success={"saba"} />
</div>
);
}
});

ReactDOM.render(
React.createElement(Root, null),
document.getElementById('content')
);
});

Я пробовал это, и я сделал costructor, и я ожидаю увидеть "Эй" в моей консоли, но этого не произойдет?

спросил(а) 2021-01-25T14:05:01+03:00 4 месяца, 4 недели назад
1
Решение
99

Вы должны использовать this.state.sentence вместо переменной

var sentence = "The FBI has managed to unlock the iPhone";

render: function() {
return (
<div >

<h1>Welcome to our game</h1>
<UserInput/>
<RandomWords NewWord={ this.state.sentence }/>
<Statistic speed={"Salman"} success={"saba"} />
</div>
);
}

И ReactDOM не требует элемента, но класса

ReactDOM.render(<Root />, document.getElementById('content'));

Если проблема все еще существует, напишите в комментариях ниже, желая исследовать

ответил(а) 2021-01-25T14:05:01+03:00 4 месяца, 4 недели назад
45

Классы, созданные React.createClass, не имеют метода constructor. Только ES6-классы constuctor метод.

Пример:

class Root extends React.Component {
constructor() {
super();
console.log("Hey");
this.state={sentenct: sentence }
}
}

ответил(а) 2021-01-25T14:05:01+03:00 4 месяца, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема