2014-04-03 54 views
0

我有以下問題在這裏:定義爲Emberjs HTML元素的ID /車把失敗

<ul class="aClass"> 
    {{#if something}} 
    <li>{{#link-to "blub" bind-attr data-testid=aID}}{{loc "blub"}}{{/link-to}}</li> 
    {{/if}} 
</ul> 

,所以我希望有與所產生的元素的元素(鏈接到呈現給<a href="">...</a>) ID 和ID。但是元素在呈現的HTML中不包含想要的id。是這樣的:

<a href="" data-testid="aID">...</a>

什麼想法?

回答

1

在餘燼,bind-attr不應內使用你的link-to幫助,應該只有HTML元素的內部使用:

<a {{bind-attr href=myLink}}>My Link</a> 

裏面的把手助手,你只需直接定義屬性。

{{#link-to "blub" data-testID="aID"}}{{loc "blub"}}{{/link-to}} 

如果缺少引號,則該屬性不會呈現到HTML中。

但你還需要重新打開LinkView

Ember.LinkView.reopen({ 
    attributeBindings: ['data-testID'] 
}); 

See similar question here.

And the Ember docs here.

+0

嘿,你讓我很快樂:)但是我不得不加引號得到它正常工作 - - > @sheldonnbbaker也謝謝你:) – izocan

1

使用try報價:

{{#link-to "blub" bind-attr data-testid="aID"}}{{loc "blub"}}{{/link-to}}

缺乏報價將導致灰燼嘗試在當前視圖上下文屬性查詢,而不是隻吐出一個字符串,你想它。