Oi Marco, tudo bem?
Confesso que nunca usei um arquivo com essa extensão .mjs
também, porém pelo que eu pude pesquisar, .mjs
é uma extensão para o módulo do EcmaScript, que permite a utilização do import
, diferentemente do "CommonJS", que é a versão, digamos, "comum" do Javascript, que utiliza require()
em vez de import
, por exemplo. Você pode ler um pouco mais sobre nesse artigo.
Normalmente nós colocamos o "type": "module"
no arquivo package.json
mesmo. Utilizar com a extensão .mjs
funcionaria igual, veja que no exemplo que eu mandei, ele cria um arquivo .mjs
para exportar uma função, e importa em um arquivo Javascript comum (porém, ainda assim é necessário alterar no package.json
, já que estamos usando o javascript comum para importar o arquivo).
Espero ter ajudado, bons estudos =)