Передача объекта в директив - Angular 2, AngularJS - Ответ 7145320

Передавать можно через scope.

Если scope изолированный, то есть несколько вариантов. В объекте scope, в качестве имени свойства слева указывается переменная в директиве, а справа название атрибута DOM c одним из трех символов в начале: @,=,&.

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

Префикс "@" означает, что локальной переменной будет присвоено значение атрибута

Префикс "=" означает, что в атрибуте передается уже не строчка, а имя некоторой переменной в текущем Scope. И локальная переменная будет напрямую с ней связана. То есть изменения переменной как внутри директивы, так и вне отразятся и там, и там.

Префикс "&" предполагает, что атрибут содержит некое выражение. К примеру, «a+b». И теперь локальная переменная становится функцией, в которую можно передавать параметры. Параметры передаются в объекте, ключами которого выступают имена переменных в функции.

Вернуться к обсуждению:

Передача объекта в директив Angular 2, AngularJS