DButton não suporta mais @action como string. Por favor, refatore para usar uma ação de fechamento em vez disso

Estou usando um tema baseado no tema Feverbee, que está em uso há vários anos. Os usuários entraram em contato, pois não conseguem mais criar novos tópicos. A mensagem de erro acima é apresentada no console.

Onde posso descobrir como preciso ajustar o código do template para corrigir esse problema de depreciação? Já passei pelos fóruns para descobrir como o código do botão d deve ser modificado, mas não encontrei nada relevante.

Você pode encontrar informações detalhadas sobre ações modernas do Ember aqui: Component State and Actions - Components - Ember Guides

Mas, essencialmente, a mensagem que você está vendo significa que você precisa mudar algo como

{{d-button action="blah"}}

para algo como:

{{d-button action=(action "blah")}}

Se você puder compartilhar um link ou um trecho do seu código, tenho certeza de que poderemos ajudar com instruções mais específicas.

7 curtidas

Fantástico, obrigado @david, isso resolveu para mim. Existe algum lugar onde eu deva procurar informações como essa no futuro?

1 curtida

Neste caso, a mensagem de erro que você viu deveria ter fornecido informações suficientes para corrigir o problema, mas claramente não foi o caso. Levaremos isso em consideração para futuras alterações e tentaremos fornecer instruções mais precisas. Obrigado por levantar a questão @pw3010

3 curtidas

Você também pode procurar exemplos de melhores práticas no código principal no GitHub da Discourse.

2 curtidas

É uma dica, mas a página que você vinculou não tem a palavra “closure”. É como se você tivesse que realmente conhecer e entender JavaScript ou algo assim. Talvez um link para uma página que explique isso como você fez? Você quase poderia encaixar algo como “mudar action=‘x’ para action=(action ‘x’)”.

Suspeito que eu deveria saber o que é um closure, mas ainda não encontrei uma maneira de dar sentido a todo o JavaScript.

1 curtida

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.