Abhängigkeiten in JavaScript installieren und aktualisieren

Installieren und Aktualisieren von JavaScript-Abhängigkeiten



Hallo wieder! Im letzten Beitrag haben wir uns mit dem Prozess der Verwaltung von Abhängigkeiten in JavaScript befasst und die Grundlagen herausgearbeitet: Was ist ein npm-Paket, wie sieht das Paketmanifest aus, in welchen Feldern werden die Abhängigkeiten geschrieben und im Prinzip, was ist ein Abhängigkeitsbaum, sowie die Grundlagen der semantischen Versionierung (Semver). Wenn Sie den vorherigen Beitrag verpasst haben , empfehle ich, damit zu beginnen.



semver, , .



npm shell autocomplete



npm . , shell.



, :



  • Bash:



    npm completion >> ~/.bashrc
    source ~/.bashrc


  • Z shell:



    npm completion >> ~/.zshrc
    source ~/.zshrc




shell- . , : npm smth… [TAB], shell .





, npm ( package.json). , npm init. .



: npm init -y, . npm , .





npm init, (npm initializers). boilerplate-.



: npm init <initializer>, <initializer> — (: esm react-app).



— npm- create-, npm registry . , .



React- create-react-app: npm init react-app -- my-react-app. CLI, npm init , . React, , , , , ( : my-react-app).



registry. , — npm registry. .





, : dependencies, devDependencies, peerDependencies optionalDependencies. : npm install <package-name> : npm i <package-name>.



: npm i lodash.



lodash dependencies .



: npm i lodash express passport.



install :



  • -P, --save-prod

    dependencies ( )
  • -D, --save-dev

    devDependencies
  • -O, --save-optional

    optionalDependencies


peerDependencies, . . npm . , dependencies npm install, peerDependencies, ( IDE npm).



, , npm , . . : ( Git).



npm install , . . : .




- , «@»:



  • npm i lodash@3.9.2
  • npm i lodash@3


. .





, , , git clone?



npm install npm i , npm , .



:



  • --only=prod[uction]
  • --only=dev[elopment]


, , , Node.js, .





. npm : npm ls.



: npm ls [<package-name>], <package-name> , .



, ( , ):





npm ls .



, «» , : npm ls lodash.





lodash npm ls lodash.



, npm ls depth. :



npm ls --depth=0


, .



dev prod , dependencies devDependencies:



  • npm ls --dev[elopment]
  • npm ls --prod[uction]


json , npm , . ( ):



npm ls --json




npm (semver). : , 1.2.3 1.2.4 (patch update) 1.3.0 (minor update), , . . semver . 1.2.3 2.0.0 , (changelog) , , , , .



, semver , , - patch minor ( , ).



, , , , , ( ).




semver . , npm : patch, minor .



package.json :



{
  "dependencies": {
    "lodash": "^4.17.17"
  }
}


«^» (caret, hat «») semver. , lodash , 5.0.0, . . patch minor , .



, semver, npm, 99% ( npm ), . . .





, , . , . . , :



{
  "dependencies": {
    "lodash": "4.17.17"
  }
}


, lodash 4.17.17, , .



:



  • , , , — ,
  • , , ( ). , , .


.



, — ( ). , . . , .





, , , . npm outdated .





npm outdated , .



:



Package
Current
Wanted , semver
Latest , ( )
Location


npm outdated , , depth , npm , :



npm outdated --depth=10


:



npm outdated --depth=9999




npm npm update.



npm registry semver . registry ( semver), , , . , semver, . . npm update , .



: lodash: ^4.16.4. npm update , 4.17.19, : ^4.17.19.



npm outdated, npm update depth , . , :



npm update --depth=9999


( ) . , .



npm-check



npm outdated npm update npm-check.



:



npm i -g npm-check


, , . , semver, , . : - . !





npm-check : , .





npm-check, : , .



npm-check , - :





npm-check , lodash .



( ) .





, . npm uninstall : rm, r un. , :



npm rm lodash express


, .



Workflow npm-



, , workflow JavaScript-. , , .



  • :

    • npm init

      ()
    • npm init -y

      ( IDE)
  • :

    • npm install <dependency>
    • npm install <dependency-1> <dependency-2>…
    • npm install -D <dev-dependency>…
  • :

    • npm outdated

      ( )
    • npm outdated --depth=9999

      ( )
    • npm update

      ( semver)
    • npm update --depth=9999

      ( semver)
    • npm-check

      ( )
    • npm-check -u

      ( )
  • :

    • npm rm <dependency>




, , . semver .



. , !






All Articles