react-mirror發起非同步請求
阿新 • • 發佈:2018-12-30
mirror 為阿里開源的狀態管理工具。
使用方法:
https://github.com/mirrorjs/mirror/blob/master/README_zh.md
非同步請求:
初學遇到的問題:每次非同步請求都能觸發,且返回值正確,但是在Promise.then裡改變state,不能觸發view更新,經檢查,不能直接在非同步回撥或promise then裡改變狀態,需要呼叫reducers.
程式碼如下
mirror.model({
name: 'appStore',
initialState: {
todoList: {},
chart: {},
news: {},
siderLink: {}
},
reducers: {
save(state, data) {
return { ...state, ...data }
}
},
effects: {
async initTodo() {
const response = await axios.get(URILIST[0]);
actions.appStore.save ({
todoList: response.data
});
}
}
})