2014-10-22 4 views
2

Assalamualaikum и привет всем. Как я читал эту страницу: https://www.polymer-project.org/articles/spa.html Я придумал следующий фрагмент кода, который не имеет для меня такого смысла.Что такое значениеattr в полимере?

<core-menu valueattr="hash" selected="{{route}}"> 
 
    <template repeat="{{page in pages}}"> 
 
    <paper-item label="{{page.name}}" hash="{{page.hash}}"> 
 
     <a href="#{{page.hash}}"></a> 
 
    </paper-item> 
 
    </template> 
 
</core-menu> 
 

 
<core-animated-pages valueattr="hash" selected="{{route}}" transitions="slide-from-right"> 
 
    <template repeat="{{page in pages}}"> 
 
    <section hash="{{page.hash}}" layout vertical center-center> 
 
     <div>{{page.name}}</div> 
 
    </section> 
 
    </template> 
 
</core-animated-pages>

Здесь документация говорит, что:

Обратите внимание, что <core-animated-pages> и <core-menu> связаны связывания их выбраны атрибуты вместе. Теперь, когда пользователь нажимает на элемент навигации, соответствующий обновлению. Значение valueattr = "hash" сообщает оба элемента, чтобы использовать хэш-атрибут для каждого элемента в качестве выбранного значения .

Я не получаю эту часть. Используется ли значение valueattr?

ответ

1

Насколько я помню <core-menu> использует <core-selector> внутренне и valueattr это имя атрибута, используемый <core-selector> для идентификации выбранного элемента.

+0

Тогда что выбрали = "{{route}}" 'do? – Sazid

+0

'' выбирает '', чей атрибут 'hash' имеет то же значение, что и поле' route' в модели. –

1

Хорошо, я понял. valueattr фактически определяет атрибут (дочерних элементов), который будет использоваться как его значение selected.

Здесь selected="{{route}}" на самом деле просто привязывает модель к двум родительским элементам, так что они обновляются автоматически, если изменяется значение одного из значения родительского элемента selected (привязка к 2-сторонним данным).

Надеюсь, что это поможет :)

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