Произойдет ли повторный рендеринг, если состояние будет изменено без использования seState? - PullRequest
0 голосов
/ 28 ноября 2018

Я пытаюсь изменить состояние следующим образом:

this.state.page = 0

Я не использую setState, так как не хочу, чтобы произошел повторный рендеринг.Но все же повторный рендеринг происходит.Насколько мне известно, только setState вызывает повторную визуализацию.

Пожалуйста, исправьте меня, если я ошибаюсь. А также, пожалуйста, дайте мне знать, как предотвратить повторную визуализацию при изменении состояния.

Ответы [ 2 ]

0 голосов
/ 28 ноября 2018

Присвоение значения this.state.param не будет повторно отображать экран.Вам нужно будет использовать

this.setState ({param: val})

0 голосов
/ 28 ноября 2018

Единственное место, где вы можете присвоить значение state, это constructor.В любом другом месте вам нужно использовать setState().

Из react-native документа: В общем случае вы должны инициализировать состояние в конструкторе, а затем вызвать setState, когда хотите его изменить.

То есть вы не можете его изменитьс назначением, вы должны использовать setState.

...