Usar filtro no atributo de diretiva causa loop infinito no ciclo $ digest

Uma tentativa de usar um filtro em uma diretiva com escopo isolado:

<div tags="p.tags | refTags"></div>

Causa um loop infinito no ciclo $ digest:

Este erro ocorre quando o modelo do aplicativo se torna instável e cada ciclo de digestão $ aciona uma alteração de estado e o ciclo de digestão $ subsequente. O Angular detecta essa situação e evita que um loop infinito faça com que o navegador deixe de responder.

.directive 'tags', ->
    restrict: 'A'
    scope:
        tags: '='
    templateUrl: 'partials/tags.html'


.filter 'refTags', ->
    (tags) ->
        ['a filtered', 'array of values']

parcials / tags.html

<ul>
    <li ng-repeat="tag in tags">{{tag.tag}}</li>
</ul>

p.tags no controlador

p.tags = ['HTML5', 'CSS', 'JavaScript', 'Angular JS', 'Backbone JS', 'Node JS', 'SASS + Compass', 'Oragami', 'Running', 'Cat Food', '#catfood']

Esse comportamento é normal?

Um filtro não pode ser usado em um valor que passa para o escopo isolado de uma diretiva?Existe uma solução alternativa para isso? Eu preciso filtrar os valores das matrizesExiste outra solução com um design diferente?

questionAnswers(2)

yourAnswerToTheQuestion