2014-11-15 2 views
6

Я хочу передать данные, которые у меня есть на переменную, на компонент Polymer через атрибут.Как передать данные из JavaScript-кода в пользовательский элемент Polymer?

Это код:

<script> 
    var item1 = { 
     title: "Title 1", 
     status: "accepted" 
    }; 
</script> 

<bm-card item="{{item1}}" otherAttribute="hello"> 

otherAttribute получает данные на пользовательский элемент, а пункт не приходит.

Как можно объект атрибут будет заселен из item1 переменная?

ответ

4

Для использования вне привязки данных из <polymer-element> вам нужно <template is="auto-binding">: https://www.polymer-project.org/docs/polymer/databinding-advanced.html#bindingoutside

Однако, вы можете просто установить свойство непосредственно в JS:

<bm-card otherAttribute="hello"> 

document.addEventListener('polymer-ready', function() { 
    document.querySelector('bm-card').item = item1; 
}); 

Причину вы должны ждать полимерцементного готово для обеспечения того, чтобы элемент обновился в DOM и определил его свойства/методы.

+0

После прочтения документации и тестирования единственным способом передачи данных в полимерный элемент является использование JavaScript. для автоматической привязки все еще требуется некоторое JS для отправки данных. – jordiburgos

+0

Да, что-то должно привязать мир js к миру HTML. – ebidel

+0

Это сделано «автоматически» в AngularJS, я бы предпочел что-то подобное. – jordiburgos

Смежные вопросы