gpt4 book ai didi

javascript - 根据条件渲染 JSX 元素

转载 作者:行者123 更新时间:2023-11-29 19:09:29 25 4
gpt4 key购买 nike

所以我在我一直在开发的 Web 应用程序中有一个简单的组件,我想知道是否有一种方法可以根据 this.props.item 的值在该组件中渲染一个元素。

这是我的 JSX:

var React = require("react"); var actions = require("../actions/SchoolActions");

module.exports = React.createClass({
deleteSchool: function(e){
e.preventDefault();
actions.deleteSchool(this.props.info);
},
render:function(){
return(
<div className="panel panel-default">
<div className="panel-heading">
{this.props.info.name}
<span className="pull-right text-uppercase delete-button" onClick={this.deleteSchool}>&times;</span>
</div>
<div className="panel-body">{this.props.info.tagline}</div>
</div>
)
} })

我希望能够做这样的事情:

   render:function(){
return(
code blah blah...

if (this.props.info = "nothing"){
<div className="panel-body">{this.props.info.tagline}</div>
}

...code blah blah

但是我无法使用渲染函数本身编写 javascript。有谁知道我该怎么做?感谢您提供任何帮助或建议,在此先感谢您。

最佳答案

您可以使用 if 有条件地渲染并返回适当的 jsx

render(){
if(something){
return(<MyJsx1/>)
}else{
return(<MyJsx2/>)
}
}

您可以将您的组件更改为:

       render:function(){
return(
<div className="panel panel-default">
<div className="panel-heading">
{this.props.info.name}
<span className="pull-right text-uppercase delete-button" onClick={this.deleteSchool}>&times;</span>
</div>
{this.props.info = "nothing"?
(<div className="panel-body">{this.props.info.tagline}</div>)
:null}

</div>
)
} })

https://facebook.github.io/react/docs/conditional-rendering.html

关于javascript - 根据条件渲染 JSX 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40258096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com