我想在防暴标签中有条件地分配事件处理程序...所以我尝试了以下操作:
<ul>
<li class="email__ {active--: showEmail} {disabled--: !hasEmailMsg}"
onClick={hasEmailMsg: handlePreviewChange('email')}
></li>
<li class="mobile__ {active--: showMobile} {disabled--: !hasMobileMsg}"
onClick={hasMobileMsg: handlePreviewChange('mobile')}
></li>
</ul>
但是它认为
hasEmailMsg
/ hasMobileMsg
是回调函数...关于如何实现此功能的任何想法? 最佳答案
尚未使用Riot.js,但您似乎没有使用普通的JavaScript三元语法。您是否尝试过如下语法:
<li class="email__ {active--: showEmail} {disabled--: !hasEmailMsg}"
onClick={hasEmailMsg ? handlePreviewChange('email') : doNothing }
></li>
其中
doNothing
只是一个不执行任何操作的函数。 (假设这是您想要的行为)。我不熟悉您的确切设置,但是我尝试在此处使用JSFiddle做一个简短的演示:https://jsfiddle.net/jonahe/hfu52x0s/使三元函数起作用。您可能比我有更好的机会看到代码的相似之处。
关于javascript - riot js三元条件触发onClick事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45846655/