Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Sugestão] Uma alternativa para usar ao data-attributes

Na aula de JavaScript na Web: manipule o DOM com JavaScript, o professor explica sobre o data-atrributes, a razão que ele da para se usar o data-attributes para pegar um elemento HTML com o Javascript é que, se você usa uma classe para pegar um elemento HTML imagiva que no futuro a equipe resolve trocar o nome da classe, logo você terá que ir no Javascript e trocar esse mesmo nome, mas usando o data-atributes você não tem esse problema se algum dia a classe desse elemento mudar nada irá acontecer no seu Javascript já que você não usou uma classe para capturar esse elemento.

Essa foi a razão apresentada para se utilizar o data-attributes, agora que outra alternativa serviria para substituir o data-atrributes para esse mesmo contexto que foi explicado?

Pois bem, tem uns 3 mese atrás que eu descobri sobre as métodogias de nomeclaturas de classes CSS como o BEM, e o que serviria para substituir seria usar uma classe CSS, porém, uma classe que utiliza um prefixo, depois de descobrir o BEM, descobri através de um vídeo do youtube a métodologia NAMESPACE, que é uma métodologia que utiliza prefixos na nomeação de suas classes, e existe um prefixo nessa métodologia que é o js- mais quaquer outro nome que vier depois do hífen é o que será usado no javascript para capturar esse elemento, exempo: js-input-email.

Agora vem a parte importante, essa classe não será usada para estilizar o elemento, ela só irá existir apenas para o Javascript, sendo assim, ela terá o mesmo benefício que o data-attributes que foi explicado no ínicio, sem falar que é intuitivo assim que você vê o prefixo js- você saberá que essa classe está sendo usado no Javascript, então não existi segredo.

Quando eu conheci essa duas métodologias eu resolvi aplicar nos meus projetos, tanto que no challange do programa ONE da Turma 5 eu utilizei o BEM junto com o NAMESPACE, onde de prefixo eu só usei o js-.

Então eu resovi escrever esse post para compartilhar esse conhecimento que adquiri recentemente, e se por acaso eu estiver errado ou enganado sobre alguma coisa é só falar, e pra você que já conhece, você acha que esse prefixo js- é uma boa alternativa ao data-attribute quando é sobre aquilo que expliquei no começo desse post?

1 resposta
solução!

Olá Daniel, tudo bem?

Primeiramente, gostaria de parabenizá-lo por estar sempre buscando novas alternativas e soluções para os desafios que surgem em seus projetos. É muito importante estar sempre atualizado e procurando maneiras mais eficientes de trabalhar.

Sobre sua pergunta, acredito que o uso do prefixo "js-" em classes CSS é uma ótima alternativa ao uso de data-attributes para capturar elementos HTML com JavaScript. Como você mencionou, essa classe não será usada para estilizar o elemento, mas apenas para identificá-lo no JavaScript, o que torna a nomenclatura mais intuitiva e fácil de entender.

Além disso, o uso de prefixos em classes CSS é uma prática comum em metodologias como o BEM e o NAMESPACE, o que torna sua implementação ainda mais fácil e padronizada.

No entanto, é importante lembrar que cada projeto tem suas particularidades e necessidades específicas, e o uso de data-attributes ou prefixos em classes CSS pode não ser a melhor solução em todos os casos. É sempre importante avaliar cada situação e escolher a solução mais adequada para o contexto em questão.

Um abraço e bons estudos.