"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Estilo do console em JavaScript com alguns kilobytes

Estilo do console em JavaScript com alguns kilobytes

Publicado em 01/08/2024
Navegar:655

Console Styling in JavaScript with a few kilobytes

Não sei sobre você, mas gosto de manter a boa aparência dos logs do console em meus projetos JavaScript. E como nem todos os terminais suportam emojis, que melhor maneira eu tenho do que colorir a saída do console?

Bem, você pode fazer isso pesquisando no Google o código de escape ANSI para cada estilo de console que desejar. Ou talvez memorize alguns deles em uma página como W3Docs. Mas adoro deixar meus registros bonitos, definitivamente não sou uma pessoa que consegue memorizar muitas coisas e gosto de ter uma maneira que funcione em todos os lugares.

Bem, normalmente só uso logs coloridos para JS, então não há necessidade de algo que funcione literalmente em qualquer lugar. Mas pelo menos algo que funcione onde quer que haja JavaScript envolvido.

Então decidi escrever meu próprio script que contém todos os códigos de escape ANSI possíveis que eu possa precisar, na forma de funções. Mas então percebi que seria chato copiar o mesmo script repetidamente em todos os meus projetos. Então, como uma pessoa que nunca trabalhou com um comando npm além do npm i e do init, decidi aprender mais e criar um pacote NPM privado que pudesse simplesmente instalar em meus projetos (ou clonar seu repositório GitHub para projetos não-NodeJS).
Eu não queria lidar com a autenticação NPM toda vez que instalasse o pacote, então apenas o tornei público.

E é para isso que estamos aqui hoje: javascript-console-styling é um pacote que fiz para facilitar esse processo para mim.

Na verdade, pacotes semelhantes aos meus já foram feitos antes (o que é um fato que só percebi depois de fazê-lo). Mas percebi que minha própria solução ainda era melhor para mim ou para qualquer pessoa como eu:

  • Meu pacote ocupou apenas 14 KB de espaço, de acordo com o npm. Enquanto outros pacotes semelhantes ocupavam até 50 vezes a mesma quantidade (mais de 500 kilobytes). Mesmo que ambos tenham menos de um megabyte, ainda é melhor ter um pacote menor porque você pode gerenciar todos os seus arquivos facilmente (ou até mesmo bifurcá-lo e modificá-lo facilmente, se desejar)

  • Meu pacote poderia aninhar estilos e decorações diferentes, já que são funções... E mesmo se você tiver uma string inteira com estilo que contém uma substring com um estilo diferente, você pode simplesmente concatenar a substring (incluindo a substring dentro a string pai impedirá que qualquer estilo seja aplicado depois dela devido à redefinição que cada função de estilo faz)

  • Meu pacote tinha ferramentas de teste fáceis que mostravam todas as combinações possíveis de cores e decoração para que os usuários pudessem verificar sua saída em seu terminal (as funções de teste não estão incluídas no pacote padrão, mas estão disponíveis na página NPM e em GitHub)

Então, no geral, prefiro usar meu próprio código. Mas parte de possuir um pacote público é garantir que as pessoas saibam como ele pode ajudá-las, para que possam escolher por si mesmas se precisarem.

Não acho que este será o último pacote NPM que criarei, mas foi uma boa maneira de me motivar sobre toda a coisa do NPM!

Certifique-se de verificar o pacote e bons hackers!

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/proman4713/console-styling-in-javascript-with-a-few-kilobytes-2gjn?1 Se houver alguma violação, entre em contato com [email protected] para excluir isto
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3