项目作者: FaureWu

项目描述 :
A dva dispatch enhancement tool
高级语言: JavaScript
项目地址: git://github.com/FaureWu/dva-dispatcher.git
创建时间: 2019-03-21T01:25:34Z
项目社区:https://github.com/FaureWu/dva-dispatcher

开源协议:MIT License

下载


dva-dispatcher

A dva dispatch enhancement tool

install

  1. $ npm install --save dva-dispatcher

or

  1. $ yarn add dva-dispatcher

use in dva

在dva项目路口文件中注册dispatcher

  1. import dva from 'dva'
  2. import { setStore } from 'dva-dispatcher'
  3. const app = dva()
  4. setStore(app._store)

假设我们有user model定义如下

  1. export default {
  2. namespace: 'user',
  3. state: {
  4. userInfo: {},
  5. },
  6. effects: {
  7. *getInfo() {}
  8. },
  9. }

在user组件中触发action,我们无需通过connect链接dispatch

  1. import dispatcher from 'dva-dispatcher'
  2. class User extends PureComponent {
  3. componentDidMount() {
  4. dispatcher.user.getInfo(payload, meta, error)
  5. .then()
  6. .catch()
  7. }
  8. render() {
  9. ...
  10. }
  11. }

use in umi

在umi项目中的全局入口文件src/app.js中加入

  1. import { setStore } from 'dva-dispatcher'
  2. setStore(window.g_app._store)

其他方法同dva