E aí, Antonio! Tudo tranquilo?
Então, quando você tenta importar algo e rola esse erro de "no default export", geralmente é porque a estrutura do pacote ou da biblioteca mudou entre as versões. Aquele import jwt_decode from 'jwt-decode';
é uma forma mais moderna de fazer importações, mas parece que a versão mais recente do jwt-decode
não está seguindo essa convenção.
Aqui vão algumas dicas:
Primeiro, vale dar uma olhada na documentação ou no repositório do jwt-decode
para ver se eles mencionam algo sobre mudanças na estrutura de importação/exportação entre versões. Às vezes, os mantenedores da biblioteca fazem essas alterações e documentam isso.
Como você mesmo observou, ao usar a versão 3.1.2, tudo funcionou bem. Então, se você está seguindo um curso que usa essa versão específica, talvez seja mais fácil (pelo menos por enquanto) continuar usando essa versão. À medida que você avança no curso, pode ser que surjam atualizações ou correções para o problema.
Se você realmente quiser ou precisar usar a versão mais recente, pode tentar uma importação diferente, se a biblioteca permitir. Por exemplo, em vez de import jwt_decode from 'jwt-decode';
, você pode tentar algo como import * as jwt_decode from 'jwt-decode';
ou const jwt_decode = require('jwt-decode');
. Isso pode resolver o problema, mas também pode não funcionar dependendo da estrutura da biblioteca.
No fim das contas, a ideia é sempre manter a flexibilidade e estar preparado para adaptar o código conforme as mudanças nas bibliotecas ou nas melhores práticas.