Есть приложение, использующее React в связке с Redux
Везде, где идет набор текста в input или textarea приложение начинает тормозить. Люди жалуются.
Почитал, что надо отключить devtools - отключил.
Дальше идут рекомментации по оптимизации shoultComponentUpdate, но тут надо обновлять каждый раз, т.к. каждая буква должна пропечататься.
Кто нибудь сталкивался с похожей проблемой? Может ли влиять на это размер состояния приложения? Состояние приложения объединяется из нескольких reducer'ов (7-8 штук) Каждый reducer может быть как Immutable.js объектом, так и простым js объектом.
На onChange вызывается один метод, который всплывает вверх по вложенным компонентам реакта на 3-4 уровня. Затем вызывается один экшн, который возвращает разу же объект, содержащий только name и value. Дальше один reducer его подхватывает и изменяет состояние через Immutable.setIn в одну строку.
Все происходит довольно плоско и я не знаю где можно оптимизировать. Помогите, пожалуйста, кто чем может.
Попробуйте использовать uncontrolled компоненты. Изменение содержимого input не приводит к изменению состояния компонента, соответственно не вызывается лишний раз метод render(), при этом, буквы в input пропечатываются. А значение input доступно по ссылке this.input.value, и вы можете использовать его, например, при отправке формы.
class NameForm extends React.Component {
constructor(props) {
super(props);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleSubmit(event) {
alert('A name was submitted: ' + this.input.value);
event.preventDefault();
}
render() {
return (
<form onSubmit={this.handleSubmit}>
<label>
Name:
<input type="text" ref={(input) => this.input = input} />
</label>
<input type="submit" value="Submit" />
</form>
);
}
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
Немного модифицировал ваш код в сниппет, в котором видно, что после вызова open значение thisreadyState = 1, а после send значение this
Суть задачи такова что в textarea вводятся ссылки, а функция должна вырезать из них "https://" и вернуть отсортированный список ссылокУдалить "https://"...
Подскажите как решить проблему выгрузки из IE версии 10+? Код здесь