日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

React-native設置全局函數globle【適用于有組件嵌套時】

 就這樣了__ 2016-09-30

APP的首頁App.js里,根據logFlag的值來判斷渲染的內容是登錄頁面還是首頁:
這里寫圖片描述
以前的邏輯是在MyInfo.js文件里的注銷按鈕里設置isLogin為false,然后跳轉到App.js,App.js判斷isLogin為false,設置this.state.logFlag為false,然后渲染出組件,即顯示出了登錄界面。

但是問題出現了,當在登錄界面登錄成功后,默認的邏輯是跳轉到App.js界面,然后App.js判斷已經登陸,然后渲染出TabBar,TabBar加載Task組件,這時會顯示2層TabBar。
原因是App.js渲染出了TabBar,TabBar加載了Task,但是實際上整個頁面還是在App組件里,所以我們從App組件跳轉到了App組件,這樣以前的底部欄不會消失,所以會出現2個。

解決方案:

設置一個全局的登出函數:
這里寫圖片描述
在其他頁面比如MyInfo.js里的登出邏輯里,直接調用logOut();然后就可以重新設置state,然后渲染原來的APP.js,而不是渲染新的APP.js。
這里寫圖片描述

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多