reactjs 条件变量===“something”&& [重复]

e3bfsja2  于 2023-03-08  发布在  React
关注(0)|答案(2)|浏览(143)
    • 此问题在此处已有答案**:

What does '&&' operator indicate with { this.props.children && React.cloneElement(this.props.children, { foo:this.foo})(5个答案)
2小时前关门了。
截至2小时前,社区正在审查是否重新讨论此问题。
为什么这个条件不起作用:

{
        selectedConfig === "house"      ||
        selectedConfig === "Zone"          ||
        selectedConfig === "Departament"  &&
        <div>
            <div className="flex flex-col w-1/2">
                <InputForn 
                    text="Nom"
                    name="nom"
                    inputType="text"
                    value=""
                />
            </div>
            <div className="flex flex-col w-1/2">
                <InputForn 
                    text="URL "
                    name="url"
                    inputType="text"
                    value=""
                />
            </div>
        </div>
    }

它是react js,我正在创建一个条件来显示/隐藏某个组件,因此当前它在我选择Departament时显示,但在条件为house or zone时不工作
我认为操作符||不起作用,为什么??或者我可以做些什么来工作???

q1qsirdb

q1qsirdb1#

添加括号。

(  selectedConfig === "house"
|| selectedConfig === "Zone"
|| selectedConfig === "Departament"
) && ...

问题是&&precedence||高。
这意味着

a || b || c && d

相当于

a || b || ( c && d )

但是你想

( a || b || c ) && d

顺便说一句,你说你想检查zone,但是你检查了Zone。你使用了不一致的大写,而且你拼错了“department”。这很容易出错。

kwvwclae

kwvwclae2#

您需要使用括号对条件进行分组:

(selectedConfig === "house" || selectedConfig === "Zone" || selectedConfig === "Departament")

相关问题