Назначение данных атрибут без значения Эмбер компонент
, что я относительно новичок в Эмбер, и я, включающий основание, 5 в Эмбер-CLI и приложения используя Эмбер-CLI и-Фонд-Сасс аддон.
Я создаю компонент Ember для элемента topbar Foundation, и мне нужно установить data-topbar
на навигаторе следующим образом:
<nav class="top-bar" data-topbar role="navigation">
<!-- ... -->
</nav>
Есть ли способ добавить привязку атрибута без связанного значения в компоненте Ember?
Следующее добавляет атрибут role
, но не data-topbar
:
// app/components/topbar-nav.js
export default Ember.Component.extend({
tagName: 'nav',
classNames: ['top-bar'],
attributeBindings: ['role', 'data-topbar'],
role: 'navigation',
didInsertElement: function() {
this.$().foundation();
}
});
Установка произвольного значения для data-topbar
, как и 'data-topbar': 'foo'
, установит атрибут на навигаторе, но это не то, что мне нужно:
<nav class="top-bar" data-topbar="foo" role="navigation">
<!-- ... -->
</nav>
Спасибо!
2 ответа:
Вы всегда можете установить tagname в
''
и сделать все остальное в шаблоне компонента:App.NavBarComponent = Ember.Component.extend({ tagName: '', role: 'navigation', didInsertElement: function() { this.$().foundation(); } }); <script type="text/x-handlebars" id="components/nav-bar"> <nav class="top-bar" data-topbar {{bind-attr role=role}}> NAVBAR </nav> </script>
Рабочая демонстрация здесь