Javascript 通过承诺使用redux最佳实践
我对上面的代码没有什么疑问Javascript 通过承诺使用redux最佳实践,javascript,reactjs,ecmascript-6,redux,Javascript,Reactjs,Ecmascript 6,Redux,我对上面的代码没有什么疑问 我可以使用export()=>{}而不是在这里编写word函数吗?只是为了保持清洁 调度是一个全局变量?我没有看到文件中的某个地方导入或需要它 这里是否需要指定标题?我在每个api调用中都看到了这一点 为什么这个承诺电话里没有陷阱?总的来说,代码是坏的 除非它是导出默认值。因为以后你需要按名称导入它 否,dispatch是传递给函数的参数: (调度)=>{} 完全取决于您的应用程序、服务器、请求等 您可以添加.catch((e)=>{})您自己,或者对一般错误使用一些
dispatch
是arrow函数的一个参数,您还可以定义getState
来访问当前的redux状态。顺便说一下,如果你想的话,你完全可以指定新的名字url
,主体
,方法
,等等。。。您的中间件应该处理添加公共头(例如内容类型)export function postRegister(credentials) {
console.log(credentials);
return dispatch => {
return fetch('/user/register', {
method: 'post',
body: JSON.stringify(credentials),
headers: {
'Content-Type': 'application/json'
}
})
.then(response => response.json())
}
}
就这么简单,那么您的中间件应该根据服务器响应来获取和分派操作类型
如果您想更多地了解中间件应该如何处理获取请求和分派操作,请务必查看我在这里的帖子:看起来像个问题
export function postRegister(credentials) {
return {
types: [REGISTER, REGISTER_SUCCESS, REGISTER_FAIL],
promise: {
url: '/user/register',
data: credentials,
},
};
}