dva中effects的call使用

新手上路,请多包涵

对call的使用,官网上说用于调用异步逻辑,支持promise。但是不使用call,也可以直接调用异步逻辑。例如下面两种方式结果相同,所以还没搞明白call的使用场景,

// 方式1
let res = yield request('/api');
if (res.success) {
    yield put({
        type: 'setData',
        payload: {
            data: res.data
        }
    })
}

// 方式2
let res = yield call(request, '/api');
if (res.success) {
    yield put({
        type: 'setData',
        payload: {
            data: res.data
        }
    })
}
阅读 5.4k
1 个回答
新手上路,请多包涵
推荐问题