1
resposta

[Dúvida] Erro com dependência no https://snack.expo.dev

Boa tarde! Estou tendo o seguinte erro ao colocar a dependência "@types/react-native": "*" :

Failed to resolve dependency '@types/react-native@*' (Can't resolve '' in '/tmp/snackager/snackager/buildStatus/1/@types~react-native@0.73.0-ios,android,web/react-native')

{
  "dependencies": {
    "typescript": "^4.9.4",
    "native-base": "*",
    "@types/react": "~18.0.27",
    "expo-status-bar": "~1.12.1",
    "react-native-svg": "15.2.0",
    "@types/react-native": "*",
    "@react-navigation/native": "^5.7.3",
    "react-native-safe-area-context": "4.10.5"
  }
}

Quando tiro essa dependência, o "native-base" dá erro e pede para colocar essa dependência, ja troquei o "*" por algumas versões especificas, mas não resolveu.

1 resposta

Olá, Karina, tudo bem?

Esse erro normalmente ocorre quando há um conflito de versões de dependências. No caso, o native-base depende de @types/react-native, mas a versão * pode não ser compatível com as outras dependências que você já possui. Entendo que você já tentou definir uma versão específica para @types/react-native, mas vamos tentar uma versão que costuma ser compatível. A versão "0.73.0" de @types/react-native geralmente resolve esse tipo de conflito, então vale testar especificamente essa, você pode tentar o seguinte:

  1. Atualize @types/react-native com a versão 0.73.0 ao invés de *:
"@types/react-native": "0.73.0"
  1. Outra dica é atualizar todas as dependências do projeto usando o comando expo install para garantir compatibilidade entre elas, pois ele ajusta as versões de acordo com a versão do SDK do Expo que você está usando.

  2. Caso o problema persista, uma alternativa é criar um projeto novo no Expo com as dependências que precisa e ir adicionando as demais aos poucos. Isso ajuda a identificar incompatibilidades com mais facilidade.

Espero ter ajudado!

Siga firme nos seus estudos e conte com o fórum sempre que precisar!

Abraços :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado