[英]angular ng-if in directive template
我的指令中有此模板
...
template:
"<div class='dd caretImg'>" +
"<div class='display-field '>{{selectedValue[displayField]}}</div>" +
"<ul>" +
"<li ng-repeat='item in data' ng-click='selectItem(item)'>" +
"<span class='checkOn' ng-if='item.value == model'></span>" +
"<span class='check' ng-if='item.value != model'></span>" +
"{{item[displayField]}}" +
"</li>" +
"</ul>" +
"</div>",
....
我需要ng-if而不是item.value來具有item [displayField],但這是:
ng-if='item[displayField]== model'
不管用。 (這樣工作正常:
"{{item[displayField]}}" +
(“ +”上方的行),但不在ng-if內部。
[displayField]是指令內部的變量。 它在html attrs中輸入。
<hover-dropdown
placeholder = "select..."
data = "comparisons"
model = "filter.comparison"
display-field = "label"
value-field = "value"
style = "width: 65px;"
on-select = "changeFilterField(filter)"
></hover-dropdown>
我嘗試了以下變體,但均未成功。
ng-if='item[displayField] == model'
ng-if='item[{{displayField}}] == model'
ng-if='item{{[displayField]}} == model'
ng-if='{{item[displayField]}}== model'
有誰知道如何做到這一點?
這是一個jsbin: http ://jsbin.com/basomupubo/edit?html,js,輸出
我的錯。 我輸入了錯誤的字段。 ng-if = item [somevariable]可以正常工作。 感謝您的關注。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.