Olá a todos, estou começando a desenvolver coisas para o Discourse e estou trabalhando em um componente de tema.
Link: GitHub - NateDhaliwal/discourse-persistent-banner: A theme component for Discourse that cannot be closed by the user.
Ao colocá-lo no Theme Creator, as configurações não aparecem, embora eu tenha um settings.yml. Alguma ideia?
1 curtida
Moin
Setembro 20, 2024, 8:28am
2
Você vê alguma mensagem de erro no criador de temas?
Eu acho que você tem que usar as mesmas aspas no início e no fim.
Isso também pode ser um problema. Eu tentaria default: "".
Talvez você queira adicionar “block” às escolhas. Caso contrário, você terá que usar o botão reverter para escolhê-lo novamente.
2 curtidas
Opa, acabei de perceber que estava clicando em ‘Criar novo’ em vez de importá-lo…
Mas agora, quando tento usar a URL, diz que about.json é inválido ou não existe, perguntando se é um tema.
About.json:
{
"name": "Persistent banner",
"about_url": "https://meta.discourse.org/t/discourse-persistent-banner/330575",
"license_url": "https://github.com/NateDhaliwal/discourse-persistent-banner/blob/main/LICENSE",
"component": true,
"theme_version": "5.0.0",
"authors": "NateDhaliwal"
}
Há algo errado?
merefield
(Robert)
Setembro 20, 2024, 10:48am
4
Vírgula ausente após a URL da licença.
4 curtidas
@merefield A versão estaria entre \"\"?
1 curtida
merefield
(Robert)
Setembro 20, 2024, 10:58am
6
Provavelmente isso também. Apenas olhe os exemplos.
1 curtida
Obrigado! Um último, não consigo exibir a variável.
https://github.com/NateDhaliwal/discourse-persistent-banner/blob/main/common/header.html
Foi porque não a inicializei corretamente? Tentei seguir o guia…
Eu teria que usar
import Component from "@glimmer/component";
export default class PracticeComponent extends Component {
get bannerLinks() {
return JSON.parse(settings.banner_links);
}
}
então?
1 curtida
merefield
(Robert)
Setembro 20, 2024, 11:13am
10
Olhe para os bilhões de exemplos
1 curtida
merefield
(Robert)
Setembro 20, 2024, 11:22am
11
Você só precisa usar um arquivo gjs se precisar processar coisas com javascript, caso contrário, um arquivo de modelo hbs pode ser suficiente. Experimente.
1 curtida
Não tenho certeza se estou indo na direção certa.
Criei javascripts/persistent-banner.hbs com isto:
https://github.com/NateDhaliwal/discourse-persistent-banner/blob/main/javascripts/persistent-banner.hbs
Mas nada aparece. Tentei colocá-lo em lugares diferentes, ainda não funciona.
Tentei olhar o exemplo, mas muitos não parecem ajudar.
Algum conselho?
1 curtida
Moin
Setembro 21, 2024, 11:51am
13
Em qual saída de plugin você deseja colocar seu banner?
Dê uma olhada em Using Plugin Outlet Connectors from a Theme or Plugin
Você pode usar https://meta.discourse.org/t/add-a-featured-topic-list-to-your-discourse-homepage/132949?u=moin como um exemplo
Você pode usar o (deprecated) Plugin outlet locations theme component para encontrar os nomes e locais das saídas de plugin. “above-main-container”, por exemplo, é o topo acima da lista de tópicos, mas não acima da barra lateral.
Observar o código de um Theme component que adiciona algo semelhante também é uma ótima maneira de aprender.
2 curtidas
merefield
(Robert)
Setembro 21, 2024, 11:57am
14
Você não precisa e não deve colocar tags de script em arquivos hbs. Elas devem ser limitadas ao conteúdo do template.
Não tente adivinhar, leia os guias:
There's a new component API in Octane! For this section, we'll be focusing on the differences between the new style, known as Glimmer components, and classic components, and how to upgrade. "Classic" components refer to older-style components that do...
3 curtidas
Então… consegui fazer funcionar sem usar um arquivo hbs, mas em vez disso usando a tag <script> com handlebars, e agora funciona.
Eu o uso assim por enquanto, mas continuarei tentando usar um arquivo hbs em vez disso.
1 curtida
Lilly
(Lillian Louis)
Setembro 22, 2024, 3:24am
16
Criei um pull request rápido para você ver a forma correta de dividir os arquivos. Sinta-se à vontade para mesclar ou apenas dar uma olhada no branch .
main ← Lillinator:split-into-handlebars-files
opened 03:22AM - 22 Sep 24 UTC
split into the handlebars file for you :)
also removed the header.html file
6 curtidas
Muito obrigado! Funciona agora!
1 curtida
Lilly
(Lillian Louis)
Setembro 22, 2024, 3:15pm
18
Sem problemas, Nate. Continue experimentando, lendo e olhando outros exemplos. Em pouco tempo, você será muito melhor do que eu nessas coisas de desenvolvimento
2 curtidas
system
(system)
Fechado
Outubro 22, 2024, 10:58pm
20
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.