Html-react-parser: index.mjs atrapalha a importação padrão

Criado em 2 abr. 2021  ·  7Comentários  ·  Fonte: remarkablemark/html-react-parser

Exportação padrão não encontrada. Este problema começou a existir desde que index.mjs foi adicionado. Quando eu excluo ou renomeio este arquivo do pacote instalado, ele cria bem. Quando o coloco de volta, recebo esses avisos novamente.

Talvez nossa configuração do webpack esteja escolhendo index.mjs em favor de index.js , mas não deveria, já que estou explicitamente dizendo a ele para encontrar apenas .js e .jsx arquivos na configuração do babel-loader.

A última versão de trabalho conhecida é 1.1.2. Eu irei fazer o downgrade por enquanto, já que o downgrade parece a coisa mais confiável a se fazer até que uma correção adequada esteja disponível.

Comportamento esperado

Build OK, sem avisos.

Comportamento Real

Avisos em todos os lugares em que este pacote está sendo usado:

export 'default' (imported as 'parse') was not found in 'html-react-parser'

Passos para reproduzir

Basta importar assim:

import parse from 'html-react-parser';

A solução alternativa é importar assim:

import * as parse from 'html-react-parser';

O que funciona perfeitamente bem. Mas, como a notação anterior está nos documentos, estou assumindo que é assim que deve ser. Portanto, por que a última forma é uma solução alternativa - não uma solução.

Demonstração reproduzível

Desculpe, é um projeto muito complicado, não tenho certeza se posso fazer isso. Se for realmente realmente necessário, posso tentar, mas, honestamente, esse problema já está me custando muito tempo 😞

Ambiente

  • Versão: 1.2.4
  • Plataforma: Windows 10
  • Navegador: Firefox 89

Todos 7 comentários

Lamento saber do problema @thany.

Como alternativa, você pode configurar a configuração do seu webpack ?

Obrigado, vou tentar depois da Páscoa.

Isso resolveu o problema! 😀

Para referência futura, eu tive que ir para:

resolve: {
  // ...
  mainFields: ['main', 'module'],
}

Já que, em nosso caso, ele se transforma em um módulo para fins de SSR, em vez de uma coisa normal que vai para o navegador.

Agora, eu ainda me pergunto. Isso é uma solução ou apenas uma solução alternativa? Não tenho certeza se isso ainda requer uma solução adequada ou se a solução acima é a verdadeira.

Até agora, não vi muitos problemas relacionados à mudança de index.mjs (exceto quando eu realmente quebrei algo). Acredito que esta seja uma solução alternativa para aqueles com configurações de webpack mais complexas.

Muito justo, então vamos considerar esta uma solução adequada.

@thany , você gostaria de documentar isso no README.md ? E estamos prontos para encerrar esse assunto?

Isso pode ser útil, sim. Bom fechar 👍🏻

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

alizeaiter picture alizeaiter  ·  3Comentários

linkurzweg picture linkurzweg  ·  8Comentários

dave-stevens-net picture dave-stevens-net  ·  9Comentários

jerome-diver picture jerome-diver  ·  9Comentários

frontendpm picture frontendpm  ·  4Comentários