如何在{{#linkTo}}
帮助器上设置自定义data-
属性?我想用这个:
{{#linkTo "foo" data-toggle="dropdown"}}foo{{/linkTo}}
结果应该是这样的:
<a id="ember323" class="ember-view active" data-toggle="dropdown" href="#/foo/123">foo</a>
但看起来是这样的:
<a id="ember323" class="ember-view active" href="#/foo/123">foo</a>
我该怎么做呢?
发布于 2013-08-23 18:36:51
一种可以做到这一点的方法是扩展Ember.LinkComponent
以了解新属性:
Ember.LinkComponent.reopen({
attributeBindings: ['data-toggle']
});
然后你可以在你的{{#link-to}}
帮助器中使用它:
{{#link-to 'foo' data-toggle="dropdown"}}Foo{{/link-to}}
这将导致:
<a id="ember262" class="ember-view active" href="#/foo" data-toggle="dropdown">Foo</a>
由于attributeBindings
是一个数组,您可以在其中放置可能需要的多个属性:
attributeBindings: ['data-toggle', 'foo', 'bar']
希望能有所帮助。
发布于 2013-08-23 19:05:27
@直觉
谢谢
你帮了很大的忙。有了这些信息,我尝试了一下LinkView,并找到了一个通用的解决方案:
Em.LinkView.reopen({
init: function() {
this._super();
var self = this;
Em.keys(this).forEach(function(key) {
if (key.substr(0, 5) === 'data-') {
self.get('attributeBindings').pushObject(key);
}
});
}
});
https://stackoverflow.com/questions/18400147
复制相似问题