dva

Tags
webappfrontendreact
Created
Nov 19, 2018 4:16 PM

https://github.com/dvajs/dva/blob/master/README_zh-CN.md

https://dvajs.com/guide/concepts.html

基于 react,react-route,redux,redux-saga

最核心的是提供了 app.model 方法,用于把 reducer, initialState, action, saga 封装到一起,比如:

app.model({

namespace: 'products',

state: {

list: [],

loading: false,

},

subscriptions: [

function(dispatch) {

dispatch({type: 'products/query'});

},

],

effects: {

['products/query']: function*() {

yield call(delay(800));

yield put({

type: 'products/query/success',

payload: ['ant-tool', 'roof'],

});

},

},

reducers: {

['products/query'](state) {

return { ...state, loading: true, };

},

['products/query/success'](state, { payload }) {

return { ...state, loading: false, list: payload };

},

},

});

SuperMade with Super