Eu estava trabalhando na configuração do meu fork do Custom Profile Link Component, e eu precisava de dois para links de sites diferentes. No entanto, atualmente, apenas usuários que têm um nome de usuário definido para ambos os sites aparecem. Como posso garantir que ambos apareçam, independentemente de a outra cópia funcionar ou não?
Sinceramente, pode não ser o data-template, mas foi isso que eu imaginei que poderia ser depois de olhar para ele por um tempo.
Não estou entendendo completamente o que você está fazendo, mas talvez seja porque você está escrevendo para o mesmo template handlebars duas vezes em vez de uma vez (com dois campos)?
Essa também era minha suspeita, mas não tenho certeza de como contornar isso.
você não pode usar um modelo? deveria ser capaz de configurar dois campos nele, a menos que eu esteja entendendo mal o que você está tentando fazer. você conseguiu fazer um campo de link funcionar? se conseguiu, ótimo ![]()
Um dos modelos é para o cartão do usuário, o outro é para o perfil do usuário, então acho que não.
Funciona quando uma de duas condições é atendida:
- Você tem duas cópias, dois campos e o usuário que você está visualizando tem ambos os nomes preenchidos
- Você tem uma cópia, um campo e o usuário que você está visualizando tem o nome preenchido
ah ok, entendi errado, pensei que você estava colocando 2 links diferentes no cartão do usuário. Agora faz sentido. sim, dois modelos.
Estou, de certa forma, já que estou usando um por cópia do Componente de Tema, que suspeito ser a raiz do problema. Posso estar errada sobre isso, no entanto.
Alimentei esse trecho de código no Lola bot sem contexto e aqui está a resposta dela:
Você está dizendo que fez um fork do tema e depois incluiu seu fork e o original? Você precisará alterar todas as referências às suas variáveis e ao ID passado para modificar a classe.
O original não funcionava mais corretamente no Discourse, então criei um fork e o revisei até funcionar. Neste momento, instalei duas cópias do meu fork, que parecem estar em conflito uma com a outra.
É isso que estou dizendo. Você precisará renomear as coisas para que não entrem em conflito.
Você provavelmente vai querer fazer um tema fazer as duas coisas em vez de ter duas cópias.
Como eu faria isso exatamente? Uma ideia que tive foi adicionar o ID do TC às handlebars, mas não tenho certeza de como faria isso.
Isso não quebraria o caso de uso original deste componente de tema?
Não sei, mas pensei que já estava quebrado? ![]()
Se ele adiciona um link usando um campo personalizado e você quer que ele adicione dois, você o escreveria de forma que pudesse ser configurado para incluir qualquer número de links para campos personalizados?
Eu fiz meu fork para corrigir bugs com o original, então espero que o meu não esteja quebrado.
Isso poderia funcionar, mas não tenho certeza de como fazer isso.
Comecei a trabalhar nisso. Meu primeiro grande obstáculo aqui é processar vários IDs. Acho que faria isso usando um loop foreach (como fiz mais acima no código), mas não tenho certeza de como fazer isso em Handlebars.
Não tenho certeza de como fazer isso em Handlebars
Parece que você está no caminho certo.
Eu nunca me lembro e pesquiso no Google por "handlebars for loop" e encontro exemplos.
Depois de mexer nisso por cerca de uma hora, vou dizer que estou perplexo. Este código:
{{#each this.customProfileLink as |links|}}
<a href="{{link.[2]}}{{link.[0]}}" target="_blank">{{link.[1]}}</a>
<p>{{link}}--{{link.content}}</p>
{{/each}}
Parece que deveria funcionar, mas tudo o que consigo encontrar sobre #each parece variar, e isso não funciona. Alguém tem alguma ideia?
E essa foi duplamente culpa minha.
Usei links para o item e link no processador. E eu não verifiquei o perfil do usuário, apenas o cartão do usuário (o perfil do usuário estava correto por algum motivo)