//utils文件夹的indexjs文件
const request = (url, option = {}) => {
if (option.body) {
option.body = JSON.stringify(option.body)
}
let newOption = {
headers: {
'Content-Type': 'application/json',
"Authorization": localStorage.getItem('token')
},
...option
};
return fetch(url, newOption).then(res => res.json()).catch((err) => alert(err));
}
export default request;
//service文件夹index.js文件
export function UserApi_authority() {//get请求接口
return request('/user/api_authority');
}
export function DeleteApiInterFace(body) {//post请求接口
return request('/user/delAutho/delApi', {
method: "post",
body
});
}
//react中model文件夹中调用
import {UserApi_authority,DeleteApiInterFace} from '../service'
export default {
namespace: 'exam',
state:{
},
reducers: {
changeState(state, action) {
return {...state, ...action }
}
},
effects: {
* UserApi_authority(action, { call, put }) {
let result = yield call(UserApi_authority);
yield put({ type: 'changeState', UserviewAuthority: result.data });
},
* DeleteApiInterFace(action, { call, put }) {
let result = yield call(DeleteApiInterFace, action.action);
if (result.code == 1) {
let result = yield call(UserApi_authority);
yield put({ type: 'changeState', UserviewAuthority: result.data });
}
},
}
}
//在需要的页面中dispatch发起
import {connect} from "dva"
class Login extends Component {
componentDidMount(){
this.props.dispatch({
type:'exam/UserApi_authority',
payload//如果需要参数
});
}
render() {
const { getFieldDecorator } = this.props.form;
return (
<div></div>
);
}
}
let mapState= store=>{
return {...store.exam}
}
export default connect(mapState)(Form.create()(Login));
fetch封装 dva中调用
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...