【发布时间】:2020-07-29 09:26:42
【问题描述】:
我有一个函数,我在其中传递了一个 query 参数,它是一个字符串。如果查询不为空,则函数调用 toggleList,布尔值为 true,否则为 false。
我还有一个接受数组的setMovies 函数。如果查询不为空,我想做这个功能。
query ? toggleList(true) : toggleList(false);
if (query) {
setMovies([...movies]);
}
但我不能这样做:
query ? (toggleList(true), setMovies([...movies])) : toggleList(false);
是否不可能在三元语句的真值部分调用 2 个函数,因为这样我实现了太多逻辑,我应该只使用普通的 if/else 语句,或者我错过了什么确实让这成为可能
【问题讨论】:
-
因为 toggleList 的输入完全基于查询的值,您可以尝试将其简化为
toggleList(Boolean(query))并不管查询值如何触发它
标签: javascript typescript ecmascript-6