javascript - 嵌套了几个三元运算符
问题描述
当我{this.state.items && this.state.items.length?
在<div className =" container ">
. 当我消除这种极端情况时{this.state.items && this.state.items.length? : Components : <Preloader />
,一切正常。很多嵌套,我不知道问题出在哪里。我认为这是一种极端情况。而不是整个页面上的主要组件,我想在整个页面上呈现预加载器
class Items extends Component {
render () {
return (
<div className="container">
{this.state.items && this.state.items.length ?
<div className="items">
<div className="item">
<span>
<i></i>
</span>
<h4></h4>
<div className="select">
<button></button>
</div>
</div>
<div className="section">
<input/>
<span>
<i></i>
</span>
</div>
<div>
'AAAAAAA'
</div>
<div className="scroll">
{this.state.items.length === 0 && this.state.status === 1 ?
<div className="array">
<p>AAAAAA</p>
</div>
:
this.state.items && this.state.items.length ?
this.state.items.map((todo, index) =>
<Item
key={item.id}
index={index}
/>
)
:
<div className="preloader">
</div>
}
</div>
</div>
<div className="another">
<Component1
/>
<Component2
/>
</div>
:
<Preloader />
</div>
)
}
}
解决方案
您}
在最后一个 div 之前缺少一个来关闭第一个三元组,并且您缺少第一个三元组第一个表达式的包装标签(我使用了 a React.Fragment
)。下面的代码片段在语法上应该是正确的。我建议你重构你的代码。
class Items extends Component {
render() {
return (
<div className="container">
{this.state.items && this.state.items.length ? (
<React.Fragment>
<div className="items">
<div className="item">
<span>
<i></i>
</span>
<h4></h4>
<div className="select">
<button></button>
</div>
</div>
<div className="section">
<input />
<span>
<i></i>
</span>
</div>
<div>'AAAAAAA'</div>
<div className="scroll">
{this.state.items.length === 0 && this.state.status === 1 ? (
<div className="array">
<p>AAAAAA</p>
</div>
) : this.state.items && this.state.items.length ? (
this.state.items.map((todo, index) => (
<Item key={item.id} index={index} />
))
) : (
<div className="preloader"></div>
)}
</div>
</div>
<div className="another">
<Component1 />
<Component2 />
</div>
</React.Fragment>
) : (
<Preloader />
)}
</div>
);
}
}
推荐阅读
- python - Python生成矩阵的所有可能组合
- c++ - 具有一致索引的快速查找的数据结构
- php - 错误:完整性约束违规:在 Laravel Eloquent 中加入时出现 1052
- javascript - 客户的电脑连接不上服务器
- phpstorm - PhpStorm 用于异常和其他的核心语言错误
- arrays - Julia - 在结构中浏览数组的许多分配
- javascript - 数据库条目中的 html 标记未呈现为 html
- php - Laravel 使用模型连接两个数据库表
- java - javalite 无法找到或加载主类
- reactjs - 为什么没有呈现方法( getUser )?