dva-model-extend

Utility method to extend dva model.

Usage no npm install needed!

<script type="module">
  import dvaModelExtend from 'https://cdn.skypack.dev/dva-model-extend';
</script>

README

dva-model-extend

npm package NPM downloads Dependency Status

Utility method to extend dva model.

Installation

npm install --save dva-model-extend

Usage

import modelExtend from 'dva-model-extend';

const human = {
  state: {
    stomach: null,
  },
  reducers: {
    eat(state, { payload: food }) {
      return { ...state, stomach: food };
    },
  },
};

const benjy = modelExtend(human, {
  namespace: 'human.benjy',
  state: {
    name: 'Benjy',
  },
});

API

modelExtend(...models) => Model

Behaviour:

  • The model.namespace will be overrided by latter model.
  • model[state|subscriptions|effects|reducers] will be merged as Object.assign.
  • model.state will be overrided be latter model if it isn't an object.

License

MIT