[英]Conditionally bind an event in Aurelia
是否可以在html視圖中使用.trigger()
或.delegate()
有條件地綁定事件?
這是常規方式:
<div mousedown.delegate="handleMouseDown($event)"></div>
我想的是:
<div mousedown.delegate="isDraggable ? handleMouseDown($event) : null"></div>
理想情況下,如果isDraggable === false
不會注冊處理程序。
目前我只是在視圖模型attached()
函數中進行此檢查.addEventListener()
有更好的方法嗎?
正如@thebluefox在問題評論中指出的那樣
<div mousedown.delegate="isDraggable ? handleMouseDown($event) : null"></div>
確實有效但添加綁定行為時會出現一些問題。
在評估三元時,以下示例將失敗
<div mousedown.delegate="isDraggable ? handleMouseDown($event) & throttle:500 : null"></div>
<div mousedown.delegate="isDraggable ? (handleMouseDown($event) & throttle:500) : null"></div>
作為一種解決方法,您可以反轉測試,以便綁定是最后的例如
<div mousemove.delegate="!isDraggable ? null : handleMouseMove($event) & throttle:500 "></div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.