REACT - 条件开关渲染,模式被识别

时间:2018-05-21 04:14:44

标签: javascript reactjs

我刚刚看到这种通过将对象作为call传递来进行切换的好方法?还是apply?到另一个对象。这种模式在普通Javascript中是否有名称?我想读一读它,所以我可以更好地理解它在React中是如何工作的:

this.state = {
    nav: content1,
}

render() {
    return (
        <section>
            {{
                content1: <content1 />,
                content2: <content2 />,
                content3: <content3 />,
            }[this.state.nav]}
        </section>
    );
}

2 个答案:

答案 0 :(得分:1)

这只是JSX内部的一个对象。

{{
   content1: <content1 />,
   content2: <content2 />,
   content3: <content3 />,
}[this.state.nav]}

相同
{favSnack: “Apple”}[‘favSnack’]

答案 1 :(得分:1)

此处JSX被视为JSON个对象,被花括号{}包围。

键和值用冒号分隔。     您可以使用点(。)表示法访问对象值:

myObj = { "name":"John", "age":30, "car":null };
x = myObj.name;

You can also access the object values by using bracket ([]) notation:
myObj = { "name":"John", "age":30, "car":null };
x = myObj["name"];