Ember classNameBindings não sendo chamados para o programa de amostra

StackOverflow https://stackoverflow.com/questions/9383373

  •  28-10-2019
  •  | 
  •  

Pergunta

Estou enfrentando problemas com associações de nomes de classe.Aqui está o código jsfiddle para o mesmo.Registrar o número de vezes que a ligação é chamada.Nunca é chamado quando a propriedade é alterada.

Foi útil?

Solução

Parece que você tem alguns problemas aqui. Primeiramente, se você deseja que as propriedades sejam recalculadas quando o conteúdo de uma matriz mudar, você não pode depender apenas da propriedade da matriz em si - ela só disparará uma alteração quando for configurada para uma matriz diferente. Se você depender de myArray.@each, sua propriedade será recalculada quando o conteúdo mudar também.

A seguir, o seu modelo contendo o span não está sendo renderizado porque você está fornecendo um modelo de visualização vazio na declaração de visualização do guidão. Altere o seu "HTML" para:

{{view App.contact}}

e sua extensão aparecerá.

Finalmente, executar Ember.run.sync() não parece ser suficiente aqui. Não estou certo sobre o motivo por trás disso, mas ... as propriedades computadas são atualizadas apenas quando lidas (em comparação com observadores que atualizam imediatamente). Eu colocaria a hipótese de que, uma vez que sua propriedade computada é usada apenas pela visão e a visão só pode ser atualizada em uma execução subsequente por meio do loop de eventos JS, sua propriedade computada é recalculada apenas uma vez para todas as suas alterações em "subordinados". Altere seu código para usar tempos limite e funcionará bem.

Aqui está um jsfiddle com todas as minhas alterações propostas.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top