Como usar TagChooser em um componente/plugin de tema

Adicionei um user_custom_field que contém um array de tags. Quero adicionar um TagChooser à página de preferências.

Coloquei algumas coisas em um plugin out let e ele exibe o que está nas preferências do usuário, então o serializer está corretamente conectado. \o/

Tenho isto:

<label class="control-label">{{i18n 'user_tags.preferences.title'}}</label>

{{this.currentUser.user_tags}}

<TagChooser @tags={{this.currentUser.user_tags}} @onChange={{action "changeSelectedTags"}} @everyTag={{true}} @unlimitedTagCount={{true}} @options={{hash
    allowAny=true
  }} />

<div class="desc">{{html-safe this.setting.description}}</div>
<SettingValidationMessage @message={{this.validationMessage}} />

Mas o TagChooser não gera nenhum código. Suspeito que preciso colocar algo críptico em algum arquivo com nome aleatório, e depois que me disserem, será totalmente óbvio o que eu precisava colocar onde, mas já vasculhei o código fonte do Discourse e vários plugins e ainda estou preso.

4 curtidas

É que @tags precisa receber uma matriz de objetos de tag e não apenas uma matriz de nomes de tag? E em vez de lançar algum erro para apontar o quão bobo eu sou, ele simplesmente não faz nada?

1 curtida

Há algum erro no console? Se não estiver gerando nenhum HTML, então eu certamente esperaria um erro no console :thinking:

3 curtidas

Suspiro. Bem, eu juro que não estava gerando erros no console. Eu juro.

Mas agora está. Terei que roubar algum código para changeSelectedTags de algum lugar agora. Pelo menos tenho uma ideia do que fazer agora que vejo os erros.

Obrigado.

3 curtidas