Необходимость атрибута value в директиве 'scope'

Я проходил процесс создания директивы. Пройдя через несколько взлетов и падений, я создал директиву ( виджет ) и дорабатывал различные атрибуты, которые будет принимать директива.

Я использовал различные доступные параметры, такие как атрибут, привязка, оценка, выражение и т. д.

Я полагал, что если вы хотите создать универсальный компонент, вы никогда не сможете сказать, как люди будут передавать значения компоненту. .

Вот иллюстрация...

Вы создаете новый компонент элемента.. скажем

<hello name="__ARGUMENT__"></hello>

Атрибут name для приветствия является единственной переменной в нем. Если вы выложите его на всеобщее обозрение... это возможные сценарии, в которых люди могут использовать этот компонент.

случай 1 :

<hello name="angular"></hello>

случай 2 :

<hello name="{{name}}"></hello> 

случай 3 :

<div ng-repeat="name in names">
    <hello name="name"></hello> 
</div>

Теперь.. для разных сценариев..Я пришел к пониманию различных вариантов. Я не могу придумать ни одного сценария, в котором вам когда-либо понадобится «атрибут», поскольку это простая прямая замена значений из компонента в шаблон..

В вашем определении директивы, если вы определили имя как «вычислить» вместо 'attribute'

if attribute :

<hello name="angular"></hello>

if Assessment :

<hello name="'angular'"></hello>

обратите внимание на дополнительные одинарные кавычки..

Итак, насколько я могу судить, оценка охватывает то, что делает атрибут. лучший выбор, чем просто атрибут, поскольку он охватывает больше сценариев!

Если кто-то может объяснить, почему вообще существует атрибут? Больше вариантов = больше путаницы.. :)

15
задан Rahil Wazir 30 October 2014 в 15:20
поделиться