1. 程式人生 > >react-mirror發起非同步請求

react-mirror發起非同步請求

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 }); } } })