React native не обновляет интерфейс рендеринга, если компонент вызывается из Android ReactActivity. - PullRequest
0 голосов
/ 30 апреля 2018

После перезагрузки компонента пользовательского интерфейса в Android ReactNative с помощью getMainComponentName () . React не обновляет компонент, даже если в реквизитах есть изменение.

Я каждый раз отправляю разные реквизиты ReactActivityDelegate , а основной компонент, т. Е. GetMainComponentName (), один и тот же. Но реагировать не обновляет интерфейс компонента. Он просто загружает ( рендер ) из предыдущего состояния, как оно есть (память, я думаю).

Я знаю, что реакция должна автоматически перерисовывать DOM, если есть изменения в реквизите или состоянии, но это не происходит.

Даже я принудительно возвращаю true из shouldComponentUpdate, значение которого по умолчанию равно true.

 shouldComponentUpdate(nextProps) {
    return true;
 }

Пожалуйста, дайте мне знать, как обновлять DOM для рендеринга каждый раз, когда в реквизитах есть изменения.

Я не знаю, как правильно использовать метод forceupdate () . Реакт говорит, что не рекомендуется использовать forceUpdate ().

Мне нужно загрузить реагирующий компонент с Android ReactNative Activity . Я убедился, что реквизит значение change e правильно передается конструктору компонента . Но функция render больше не вызывается, если компонент загружен ранее. Если я выполню перезагрузку в эмуляторе , новые изменения отражаются нормально.

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

Обновление: Рендеринг вызывается, но Native ReactMethod больше не вызывается, если есть какое-то изменение в ответе от @ReactMenthod.

...