feat: remove loading from model and use DvaModel instead of redundant types such as kAModelType (#47)

* feat: use DvaModel instead of redundant types such as kAModelType

* feat: set the type for registerServer

* feat: remove loading from model
This commit is contained in:
balibabu
2024-01-30 19:26:29 +08:00
committed by GitHub
parent 96a1a44cb6
commit 362ec6c364
29 changed files with 1911 additions and 1938 deletions

View File

@ -2,32 +2,29 @@ import { Authorization } from '@/constants/authorization';
import userService from '@/services/userService';
import authorizationUtil from '@/utils/authorizationUtil';
import { message } from 'antd';
import { Effect, Reducer, Subscription } from 'umi';
import { DvaModel } from 'umi';
export interface loginModelState {
export interface LoginModelState {
list: any[];
info: any;
visible: boolean;
}
export interface logingModelType {
namespace: 'loginModel';
state: loginModelState;
effects: {
login: Effect;
register: Effect;
};
reducers: {
updateState: Reducer<loginModelState>;
};
subscriptions: { setup: Subscription };
}
const Model: logingModelType = {
const model: DvaModel<LoginModelState> = {
namespace: 'loginModel',
state: {
list: [],
info: {},
visible: false,
},
reducers: {
updateState(state, { payload }) {
return {
...state,
...payload,
};
},
},
subscriptions: {
setup({ dispatch, history }) {
history.listen((location) => {});
@ -53,29 +50,18 @@ const Model: logingModelType = {
userInfo: JSON.stringify(userInfo),
Token: token,
});
// setTimeout(() => {
// window.location.href = '/file';
// }, 300);
}
return data;
return retcode;
},
*register({ payload = {}, callback }, { call, put }) {
*register({ payload = {} }, { call, put }) {
const { data, response } = yield call(userService.register, payload);
console.log();
const { retcode, data: res, retmsg } = data;
if (retcode === 0) {
message.success('注册成功!');
callback && callback();
}
},
},
reducers: {
updateState(state, { payload }) {
return {
...state,
...payload,
};
return retcode;
},
},
};
export default Model;
export default model;