【发布时间】:2020-05-18 18:08:10
【问题描述】:
我该怎么做?
这是一个示例代码
我正在尝试将结果存储在已经初始化的数组中以发送到另一个文件?怎么办?
Promise.all(
trendingMovies.results
.slice(0, 5) // use slice instead of a loop
.map((
trendingMovie // map movie to [language,movie]
) =>
getLanguageNamefromCode(
// get async language
trendingMovie.original_language
// resolve to [language,movie]
).then((language) => [language, trendingMovie])
) // sorry, forgot to return here
)
.then((
results // results is [[language,movie],[language,movie]]
) =>
results.map(([language, trendingMovie]) => {
const hasUserSaved = getState().UserMovies.userMovies.find(
(userMovie) => userMovie.id === trendingMovie.id.toString()
// snippet does not have conditional chaining
);
return new Movie( // create new Movie
trendingMovie.id.toString(),
language,
hasUserSaved ? hasUserSaved.location : ""
);
})
)
.then((movies) => {
// loadedTrendingMovies.push(movies);
loadedTrendingMovies = [...loadedTrendingMovies, ...movies];
console.log("loadedTrendingMovies", loadedTrendingMovies);
})
.catch((err) => console.log(err)
}
应该采取什么方法? 如果我想更详细地研究这个主题,我应该参考什么?
.............堆栈溢出不会让我提交geez
【问题讨论】:
-
您能否阐明“将结果存储在已初始化的数组中以发送到另一个文件”的意思?也许如果您发布此其他文件的代码,我们会更清楚。
-
这是来自 and 动作创建者,它分派从 map 函数接收到的数组到 reducer 以存储在 redux 存储中 @Jacob
-
这意味着你已经将它存储在 redux 存储中了?不知道你在问什么。
-
你看到最后一个 then 块我需要从那里获取结果以存储在一个变量中,否则该变量是未定义的,那么我该怎么做呢?类似于我在最后一个然后块或任何其他方式中存储加载趋势电影的方式。我的方式是正确地进行控制台日志,但是当我使用选择器进入商店访问它时它是空的!
-
你不直接发送
loadedTrendingMovies吗?我认为我们需要更多地了解您的动作创建者才能将其置于上下文中。
标签: javascript reactjs react-native react-redux react-hooks