Heliosurge
(Dan DeMontmorency)
Setembro 17, 2024, 2:31pm
1
Peço desculpas, pois ainda sou um completo novato.
Estou trabalhando na criação de um componente de tema.
Importei o esqueleto do componente de tema.
Criei um arquivo JavaScript e o adicionei em
Javascript\Discourse\Initializers\Discourse_foo.js
Pelo que entendi, este arquivo precisa ser chamado pela tag de script no cabeçalho?
<script src="discours_foo.js"></script>
Analisando alguns outros componentes de tema, não vi nenhum deles ter um arquivo chamado header.css? Chamando os scripts JS que eles estão usando.
Qualquer orientação é muito apreciada para melhorar meu entendimento.
Obrigado.
pfaffman
(Jay Pfaffman)
Setembro 17, 2024, 2:42pm
2
Esta é a minha compreensão de novato, que pode ser útil para a sua compreensão ainda mais de novato, mas provavelmente está tecnicamente incorreta do ponto de vista de alguém que realmente entende dessas coisas.
Eu não acho. Acho que funciona porque está naquele diretório de inicializadores. Se não me engano, o esqueleto inclui um inicializador com um console.log para que você possa ver que ele está em execução.
(Acho) Você só precisa executá-los em um script se adicioná-los em um componente de tema feito no estilo antigo no UX em vez de uma maneira mais nova de colocar os arquivos no lugar certo.
Heliosurge
(Dan DeMontmorency)
Setembro 17, 2024, 2:51pm
3
Ok, isso parece fazer sentido.
Um dos que eu olhei foi o seu hide staff.
Então, se você não precisa de nenhum CSS, você só precisa incluir seu arquivo JScript no diretório initializers e preencher os detalhes do about.json?
E o componente deve funcionar sem mais nada? (Assumindo que o script esteja bom, é claro)
pfaffman
(Jay Pfaffman)
Setembro 17, 2024, 3:03pm
4
Eu acho que isso é verdade. Se você não quiser adicionar CSS, então você não precisa de um arquivo CSS. (Parece uma tautologia segura.)
Heliosurge
(Dan DeMontmorency)
Setembro 17, 2024, 3:06pm
5
Sempre divertido aprender coisas/procedimentos novos.
Lilly
(Lillian )
Setembro 17, 2024, 3:17pm
6
estes tópicos devem ajudar
Temas complexos em JavaScript podem ser divididos em vários arquivos, para manter as coisas bem organizadas.
Para usar essa funcionalidade, basta adicionar arquivos à pasta /javascripts no diretório do seu tema. Esses arquivos não podem ser editados na interface do Discourse, portanto, você deve usar o Theme CLI ou fazer o source do tema via git .
Arquivos JavaScript são tratados exatamente da mesma forma que em core/plugins, então você deve seguir a mesma estrutura de arquivo/pasta. Os arquivo…
Os temas e componentes de tema estão se tornando cada vez mais poderosos, e os desenvolvedores estão ficando cada vez mais ambiciosos. Para facilitar as coisas para os desenvolvedores, os temas agora podem dividir seu SCSS em vários arquivos.
Ao criar um novo tema com o theme CLI , ou compartilhar um tema no github , simplesmente crie uma nova pasta chamada scss. Preencha-a com seus arquivos .scss, seguindo qualquer estrutura de pasta, e todos os arquivos estarão disponíveis para você importar …
Heliosurge
(Dan DeMontmorency)
Setembro 17, 2024, 3:26pm
7
Muito obrigado, Lilly. Vou verificar. Você nos ajuda como sempre, muito apreciado.