在初始加载期间,reducer返回的值将更新。 但返回的后续值未在状态中更新。
在reducer代码下面,connectToTradeServer是一个使axios调用另一个站点并获取数据的函数。
export default (state = [{"_id":"helkjdflj"}], action) => {
switch (action.type) {
case TRADE_LIST_UPDATED: {
connectToTradeServer((err, res) => {
if (err) {
return state;
} else {
return res;
}
});
}
default: return state;
}
}
我在这里做错了什么? 提前谢谢。
答案 0 :(得分:1)
Redux的减速器本质上是一个同步功能。你在里面有异步操作。 connectToTradeServer
内的redux-thunk
语句不执行任何操作。我建议您检查redux-saga
或TRADE_LIST_UPDATED
项目,了解如何处理异步操作。
同样在return
情况下,您不会library(dplyr)
df <- tibble(country = c('United States', 'United States', 'Austria', 'Austria', 'United States'),
haveworkedlang = c('Swift', 'Python', 'JavaScript', 'JavaScript', 'Swift'))
df %>%
group_by(haveworkedlang) %>%
summarize(n())
。最后,每个reducer调用都会返回初始状态。