我是一个新的反应,概念对我来说仍然是新的。我正在做这个例子,我想知道是否有可能用另一种方式重写它,并完全避免使用.bind。这里的目标只是尽可能减少所需编写的代码!
完整的示例可以在这里找到:
https://codepen.io/akamali/pen/awvqeM
该组件只是呈现一个菜单列表,当您单击一个项目时,它会突出显示所选的文本。
ES5
<ul className='languages'>
{languages.map(function (lang) {
return (
<li
style={lang === this.state.selectedLanguage ? {color: '#d0021b'} : null}
onClick={this.updateLanguage.bind(null, lang)}
key={lang}>
{lang}
</li>
)
}, this)}
</ul>**ES6 => **
<ul className='languages'>
{languages.map(lang => {
return (
<li
style={lang === this.state.selectedLanguage ? {color: '#d0021b'} : null}
onClick={this.updateLanguage.bind(null, lang)}
key={lang}>
{lang}
</li>
)
},)}
</ul>https://stackoverflow.com/questions/44431302
复制相似问题