1
resposta

nodejs: systemjs vs Commomjs

Typescript parte 2 - Aula 05 - Atividade 10

No texto diz: "Como fica o sistema de módulos? Os módulos do Node.js usam o padrão commonjs. Felizmente o compilador TypeScript aceita este parâmetro em na propriedade module do arquivo tsconfig.json."

Na parte "server" de um projeto usando Nodejs tenho obrigatoriamente que usar commonjs ou posso usar systemjs da mesma forma que foi utilizado nos cursos de javascript avançado e typescript?

Outras perguntas: 1) É comum e é correto usar dois sistemas de módulos no mesmo projeto (um no cliente ou no servidor)? 2) Vocês tem alguma link confiável comparando esses sistemas de módulos?

1 resposta

O System.js é um loader que roda no browser. Ele só existe para carregar módulos no browser. No lado do servidor, não se usa System.js, porque o Node.js já tem o sistema de módulos dele que é CommonJS.

Você pode escolher o sistema de módulos que desejar no browser, não faz diferença. Porém, se você usar um sistema de módulos igual ao usado pelo Node.js, você utilizará a mesma sintaxe nos dois casos e isso pode ser interessante para unificar a maneira de pensar módulos na equipe.

Eu já uso o ES6 Modules no frontend, porque é especificado.