AngularJS: забавная особенность bindonce
05 Jun 2014
Для AngularJS существует модуль bindonce, который позволяет сократить количество вотчеров и тем самым ускорить страинцу.
У этого модуля есть директива bo-attr, которая позволяет использовать в качестве атрибута элемента любое нужное нам значение. В качестве значения выступает выражение, которое будет проинтерпретировано и добавлено в dom.
Однако, у этой директивы есть забавное поведение, которое связано с особенностями интерпретации.
$scope.title = 'some text with $peci@l chars'
$scope.title\_ref = 'title'
$scope.title\_title\_ref = 'title\_ref'
\<a bo-attr="" bo-attr-title="title"\>anchor1\</a\>
\<a bo-attr="" bo-attr-title=""\>anchor2\</a\>
\<a bo-attr="" bo-attr-title="''"\>anchor3\</a\>
\<a bo-attr="" bo-attr-title=""\>anchor4\</a\>
Как думаете, что выведется в каждом случае? :)