Ir para o conteúdo principal

Integração com Frameworks

A integração entre Web Components e frameworks pode não ser fácil em determinadas situações. Por isso, nós criamos as bibliotecas de integração (wrappers). Basicamente, elas encapsulam os Web Components em uma biblioteca de componentes na tecnologia nativa de algum framework. Isso facilita a integração com funcionalidades nativas dos frameworks, como, por exemplo, o binding.

Para mais detalhes sobre como o Stencil faz a integração, consulte a documentação do Stencil sobre integrações.

Note que, em determinadas situações, pode não ser possível fazer essa integração. Isso depende muito da evolução da especificação de Web Components e do suporte dos frameworks.

Web Components vs Frameworks

AspectoWeb ComponentsFrameworks Específicos (Angular, React, Vue)
IndependênciaFunciona em qualquer projeto que suporte HTML, CSS e JSLigado ao ecossistema do framework, com dependências específicas
ReutilizaçãoReutilizável em diferentes contextos e plataformasReutilização limitada a projetos usando o mesmo framework
Tamanho e DesempenhoMais leve, sem sobrecarga de bibliotecas adicionaisPode ter uma sobrecarga de recursos, impactando o desempenho
CompatibilidadeCompatível com várias stacks e frameworksPode ter problemas de compatibilidade ao migrar entre frameworks
Comunidade e SuporteComunidade em crescimento, mas menor que a de frameworks popularesComunidade ampla com suporte robusto e diversas bibliotecas
Curva de AprendizadoRequer conhecimento de APIs específicas de Web ComponentsCurva de aprendizado adaptada ao ecossistema do framework
Ferramentas e EcossistemaFerramentas limitadas e em desenvolvimentoFerramentas maduras para desenvolvimento, teste e deploy
ModularidadeModular por natureza, permite uso seletivo em projetosModularidade depende das ferramentas e práticas do framework

Estrutura e Filosofia

  • A biblioteca em Stencil utiliza a abordagem de Web Components nativos, proporcionando melhor compatibilidade e reutilização em diferentes frameworks.
  • Stencil permite a criação de componentes assíncronos e otimizações automáticas de build, melhorando o desempenho.

Tipo de Dados

  • Stencil usa decorators do TypeScript, oferecendo tipagem mais rigorosa e suporte a IDEs, o que facilita o desenvolvimento e a manutenção.

Ciclo de Vida

  • Os métodos do ciclo de vida dos componentes em Stencil diferem dos hooks em Vue. Familiarize-se com os métodos como componentWillLoad, componentDidLoad, e outros.

Recomendações

  • Avalie cuidadosamente as necessidades do projeto antes de escolher uma ferramenta.
  • Considere a curva de aprendizado e a experiência da equipe de desenvolvimento.
  • Experimente diferentes ferramentas para encontrar a mais adequada ao projeto.

Bibliotecas de Integração

import DocCardList from '@theme/DocCardList'
;<DocCardList />