reactjs 分派一个选项或另一个选项的条件

g6ll5ycj  于 2022-11-29  发布在  React
关注(0)|答案(1)|浏览(110)

我必须将selectedMovie id或selectedSerie id分派到redux。我正在尝试创建一个条件。这就是我现在所做的,我添加了||但我不太清楚这是否可能。

useEffect(() => {
    if (isModalVisible) {
        if (Array.isArray(dt) && dt.length > 0) {
            dt?.forEach((el) =>
                dispatch(synt(language, el, SelectedMovie[0]?.id || 
SelectedSerie?.id))
            );
        }
    }
}, [dispatch, language, isModalVisible]);
mrphzbgm

mrphzbgm1#

是的,使用||是非常可能的。当使用逻辑OR ( || )运算符时,如果第一个操作数的第一次求值为false,则计算第二个操作数。

var a = (val) => console.log(val, "val")
x = {}
var e = 'e';
a(x?.ele || e);
a(x?.ele ? x?.ele : e);

解决方案2:??

Nullish coalescing operator (??)是逻辑运算符,当其左侧操作数为空或未定义时,返回其右侧操作数,否则返回其左侧操作数。
dispatch(syncToServer(language, el, SelectedMovie[0]?.id ?? SelectedSerie?.id))

解决方案3:一个月四个月一个月一个月一个月五个月一个月

另一种方法是使用?:运算符。

dispatch(syncToServer(language, el, SelectedMovie[0]?.id ? SelectedMovie[0].id : SelectedSerie?.id))

相关问题