от
Когда я перемещаю страницу, используя библиотеку
react этих навигаторов для перемещения страницы componentDidMount
, это можно сделать только один раз, и после этого компонент жизненного цикла не работает, попросите решение: следуйте моему коду. Я открыл вопрос о Github, я попытался отправить состояние родителю. я использовал   response-native-tab-navigator версия 0.3.4
class MainTab extends Component {

state = {
    selectedTab: 'home'
};

render() {
        return (

                <
                TabNavigator.Item selected = {
                    this.state.selectedTab === 'home'
                }
                title = "Home"
                selectedTitleStyle = {
                    {
                        color: "#FF7158",
                    }
                }
                tabStyle = {
                    {
                        borderTopWidth: this.state.selectedTab === 'home' ? 3 : 0,
                        borderTopColor: '#FF7158',
                        backgroundColor: this.state.selectedTab === 'home' ? '#fff8f6' : '#FFFFFF'
                    }
                }
                renderIcon = {
                    () => < Image source = {
                        require('allComponents/images/ic_beranda.png')
                    }
                    style = {
                        {
                            width: 18,
                            height: 18
                        }
                    }
                    />}
                    renderSelectedIcon = {
                        () => < Image source = {
                            require('allComponents/images/ic_beranda

Я ожидаю, что componentDidMount
может функционировать на TabBar.              

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

1 Ответ

0 голосов
от
componentDidMount
не будет срабатывать, когда он находится внутри tabNavigator (ожидайте, что компонент будет монтироваться впервые). Причина в том, что при переключении с одной вкладки на другую каждая вкладка отображается в первый раз, а все вкладки отображаются, если вы сфокусировали их один раз. Я не знаю, какой навигатор вы используете, но обычно у вас есть способ узнать, когда экран «сфокусирован», а когда «размыт». Используя их, вы можете запускать функцию каждый раз, когда «фокусируете» экран. Надеюсь, это поможет вам лучше понять, как это работает!     
...