javascript - 条件渲染在 reactjs 中没有按预期工作

标签 javascript reactjs

function Demo(props){


    return(
        <div>
            {props.boolean && <div>}  
            <h1>
                HI,many of these kind of dom elements will be here
             </h1>
            {props.boolean && </div>}
        </div>

    )

}

ReactDOM.render(
  <Demo boolean="true"/>, document.body
);
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<!DOCTYPE html>

</head>
<body>

</body>
</html>

如果 prop bool 值为真,我想获取表单标签,但它没有按预期工作。 如果我使用这样的代码

   {props.boolean && <div></div>}  
    <h1>
        HI,many of these kind of dom elements will be here
     </h1>
    {props.boolean && <div></div>}

它来了,所以如果开始和结束标签在一起那么它的工作。当标签分开时有什么方法可以获取值...请帮助

最佳答案

你正在尝试做某事,这有点反模式。这可能是更好的解决方案:

function Demo(props) {
    function MyContents() {
        return (
            <h1>
                HI,many of these kind of dom elements will be here
            </h1>
        );
    }

    return (
        <div>
            { props.boolean ?
                <div><MyContents /></div>
                :
                <MyContents />
            };
        </div>
    );
}

ReactDOM.render(
    <Demo boolean="true" />, document.body
);

关于javascript - 条件渲染在 reactjs 中没有按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45303908/

相关文章:

javascript - 网页中的计时器与 phantomjs 中的时间同步

javascript - 如何将包含另一个div的类的变量传递给JS函数并使用它来显示/隐藏相应的div?

javascript - 使用react.js,我没有收到任何错误,但内容未加载

javascript - 简单的正则表达式问题

javascript - 如何在 Vue setup() 方法中访问 Vuex 商店?

javascript - Navlink 导致 URL 更改但页面未加载

javascript - React-Leaflet - 自定义 Pin,OnClick 链接到另一个页面

javascript - 如何将存储图像从 Firebase 数据库上传到我的菜单页面?

javascript - 如何 1).放一个 div , 2).在 v6 React 中使用 React Router 在 <Routes> 中渲染没有 Route 的组件?

javascript - 如何从 HTML 中的输入框中删除 Blinker