传统的开发是把所有的URL和接口服务写在一起,这样不便于维护归类,通过规范化Service定义来达到一个规范
一个常规的service服务类如下:
/*** 服务请求类*/import request from "ucf-request";//定义接口地址const URL = {"GET_LIST": `/order/list`}/*** 获取主列表* @param {*} params*/export const getList = (params) => {return request(URL.GET_LIST, {method: "get",params});}
然后在model里面导入该类拿到调用的方法,大致如下:
/*** 数据模型类*/import { actions } from "mirrorx";import * as api from "./service";export default {// 确定 Store 中的数据模型作用域name: "app",// 设置当前 Model 所需的初始化 stateinitialState: {order: '',},reducers: {/*** 纯函数,相当于 Redux 中的 Reducer,只负责对数据的更新。* @param {*} state* @param {*} data*/updateState(state, data) { //更新statereturn {...state,...data};}},effects: {/*** 按钮测试数据* @param {*} param* @param {*} getState*/async loadData(params, getState) {let result = await api.getList(params);return result;}}};
