摘要:傳入從中獲取傳入可以在頁(yè)面中獲取組件通過(guò)是或來(lái)判斷是否顯示登陸框則顯示則隱藏隱藏登陸框調(diào)用從原始狀態(tài)獲取如果初次登陸沒(méi)有則調(diào)用顯示登陸框如果有信息則執(zhí)行下面的代碼
store傳入accountReducer
1.從cookie中獲取id,avatar,nickname.
2.createStore(reducer, initState)傳入reducer,可以在頁(yè)面中state.accountReducer.current_account獲取
const middleware = routerMiddleware(browserHistory); let initState = {}; if(Cookie.hasItem("id")){ initState.accountReducer = { current_account:{ id: Cookie.getItem("id"), avatar: Cookie.getItem("avatar"), nickname: Cookie.getItem("nickname") } } } let store = createStore( reducer, initState, compose( applyMiddleware(thunkMiddleware, middleware), (window.RAILS_ENV === "development" && window.devToolsExtension) ? window.devToolsExtension() : f=>f ) );SignInPopup組件
1.通過(guò)this.props.sign_in_popup_visible是true或false來(lái)判斷是否顯示登陸框.
true則顯示,false則隱藏.
2.隱藏登陸框,this.setSignVisible(false);,調(diào)用this.props.dispatch(setSignInPopupVisible(visible));
3.Action:
function setSignInPopupVisible(value){
return { type: SET_SIGN_IN_POPUP_VISIBLE, value: value };
}
4.reducer:
function current_account(state={}, action){
switch(action.type){ case SET_ACCOUNT: return Object.assign({}, state, action.data); case INIT_ACCOUNT: return action.data; default: return state; }
}
{ this.props.sign_in_popup_visible?checkStatus:"" } sign_in_popup_visible: state.accountReducer.sign_in_popup_visible setSignVisible: function(visible) { this.props.dispatch(setSignInPopupVisible(visible)); } function setSignInPopupVisible(value){ return { type: SET_SIGN_IN_POPUP_VISIBLE, value: value }; }
1.current_account從原始狀態(tài)init_state獲取.
如果初次登陸沒(méi)有cookie,則調(diào)用this.setSignVisible(true),顯示登陸框.
如果有cookie信息,則return true,執(zhí)行下面的代碼.
this.props.dispatch(takeRedPacket(id));
else if (xhr.status === 401) {
dispatch(setSignInPopupVisible(true));
}
checkStatus: function(){ const {current_account} = this.props; if(!current_account.id){ this.setSignVisible(true); return false; }else{ return true; } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/84364.html
摘要:客戶端設(shè)置手動(dòng)提交,修改事務(wù)隔離級(jí)別為,并且開啟事務(wù)一定要在開啟事務(wù)前修改事務(wù)的隔離級(jí)別,不然當(dāng)前還是保持著原來(lái)的事務(wù)隔離級(jí)別,直到當(dāng)前事務(wù)提交。 本質(zhì) 隔離級(jí)別定義了數(shù)據(jù)庫(kù)系統(tǒng)中一個(gè)操作產(chǎn)生的影響什么時(shí)候以哪種方式可以對(duì)其他并發(fā)操作可見,隔離性是事務(wù)的ACID中的一個(gè)重要屬性,核心是對(duì)鎖的操作。 鎖 從數(shù)據(jù)庫(kù)系統(tǒng)角度 共享鎖(Shared Lock) 讀鎖,保證數(shù)據(jù)只能讀取,不能被修...
摘要:閑來(lái)無(wú)事,學(xué)習(xí)了下安卓的逆向工程,有助于觀摩學(xué)習(xí)他人的優(yōu)秀代碼,查詢了解后發(fā)現(xiàn)大體包括兩部分反編譯,即語(yǔ)法學(xué)習(xí)層,匯編學(xué)習(xí)。不多說(shuō),做過(guò)安卓開發(fā)都可以改,重點(diǎn)是的閱讀修改。想要深入了解相關(guān)知識(shí),可以百度關(guān)鍵字安卓,安卓,安卓,安卓。 閑來(lái)無(wú)事,學(xué)習(xí)了下安卓的逆向工程,有助于觀摩學(xué)習(xí)他人的優(yōu)秀代碼,查詢了解后發(fā)現(xiàn)大體包括兩部分:1.dex反編譯,即smali語(yǔ)法學(xué)習(xí);2.Native層,...
閱讀 2964·2021-09-10 10:51
閱讀 2297·2021-09-02 15:21
閱讀 3284·2019-08-30 15:44
閱讀 961·2019-08-29 18:34
閱讀 1734·2019-08-29 13:15
閱讀 3394·2019-08-26 11:37
閱讀 2764·2019-08-26 10:46
閱讀 1172·2019-08-26 10:26