npm install chiaro il reagire-native in node_modules

Mi trovo di fronte a un problema quando si tenta di utilizzare npm install per installare redux a mio react-native progetto. Ogni volta che lo faccio eseguire npm install redux --save il react-native directory all’interno node_modules verranno cancellati.

Allora io uso rm -rf node_modules && npm install tutti react-native pacchetto non si installa all’interno node_modules quindi devo ri-creare il progetto.

Cerco anche di copia & passato react-redux e redux in node_modules da un altro progetto per il mio attuale react-native progetto. Ma è successo, l’errore mi portano a problema su github. Ho seguito questa guida e anche non riuscire.

Altre informazioni:

➜ npm: 5.0.3

➜ reagire-nativo-cli: 2.0.1

➜ reagire nativo: 0.45.0

➜ pacchetto.json

{
    "name": "MyProjectNAME",
    "version": "0.0.1",
    "private": true,
    "scripts": {
        "start": "node node_modules/react-native/local-cli/cli.js start",
        "test": "jest"
    },
    "dependencies": {
        "react": "16.0.0-alpha.12",
        "react-native": "0.45.0",
        "react-redux": "^5.0.5",
        "redux": "^3.6.0"
    },
    "devDependencies": {
        "babel-cli": "^6.24.1",
        "babel-jest": "20.0.3",
        "babel-preset-es2015": "^6.24.1",
        "babel-preset-es2017": "^6.24.1",
        "babel-preset-react-native": "1.9.2",
        "jest": "20.0.4",
        "react-test-renderer": "16.0.0-alpha.12"
    },
    "jest": {
        "preset": "react-native"
    }
}

Ogni consiglio è apprezzato. Grazie

OriginaleL’autore Robust | 2017-06-10

2 Replies
  1. 7

    Contento che hai risolto questo problema utilizzando una soluzione temporanea modo, ma mi permetta di spiegare perché reagire-modulo nativo è stato rimosso quando si correva npm install redux --save.

    Soluzione:

    1. Di spostare il pacchetto-lock.json fuori della cartella del progetto (non cancellare ancora perché è necessario ispezionare più tardi)
    2. Eseguire rm -rf node_modules && npm install
    3. Controllare /node_modules e reagire nativo dovrebbe essere lì ora
    4. Eseguire npm install redux (npm v5 –salva per impostazione predefinita) per installare redux senza avere i moduli esistenti rimosso

    Che cosa è il pacchetto-lock.json?

    Ci sono un sacco di modifiche per npm v5 che si può leggere qui. Uno di loro è la generazione di pacchetto-lock.json (file) ogni volta che npm modifica /node_modules o del pacchetto.json.

    Con pacchetto-lock.json, chi corre npm install (v5) si ottiene esattamente la stessa node_modules albero che si stavano sviluppando. Così, si dovrebbe impegnarsi in questo file di troppo.

    Perché reagire-modulo nativo e gli altri sono stati rimossi dopo l’esecuzione di npm install somePackageName anche loro sono definite nel pacchetto.json?

    La rimozione di successo a causa di il vostro nodo esistente moduli sono stati installati prima del npm v5. Se si utilizza npm v5 per installare un modulo (ad es. npm install redux), si potranno notare tre cose:

    1. pacchetto-lock.json verrà generato (aggiornato o se esiste). Redux e le sue dipendenze sono salvati in esso.
    2. Il redux del pacchetto.json è diverso da quello del nodo di moduli che sono stati installati prima del npm v5 (alcuni campi aggiuntivi prefisso _ ad esempio _from, _requiredBy, _resolved etc.).
    3. Infine, ogni modulo installato prima v5 sarà rimosso il che penso sia dovuto alla mancanza di campi aggiuntivi nella sua confezione.json E non esiste nel nuovo pacchetto generato-lock.json.

    Così, in esecuzione rm -rf node_modules && npm install di nuovo, non risolve il problema perché il pacchetto-lock.file json (Ricordo solo redux e le sue dipendenze sono state salvate il file? È possibile controllare il vecchio pacchetto-lock.json)

    Speranza che questo possa aiutare qualcun altro.

    grande! grazie mille
    Contento che aiuta

    OriginaleL’autore max23_

  2. 0

    Infine, ho risolto questo problema da 2 fasi:

    1) Creare un reactjs progetto e installare redux

    2) Copiare tutto il contenuto di node_modules nel passaggio 1 e incollare il mio attuale react-native progetto.

    Ricaricare app. Tutto funziona bene.

    OriginaleL’autore Robust

Lascia un commento