Votre guide détaillé des cinq types de dépendance
Bonjour, Khabrovites. Pour les futurs étudiants sur le cours "Développeur JavaScript. Professionnel" a préparé une traduction du matériel.
Nous invitons également tout le monde à un webinaire ouvert sur le thème "Vue 3 - les capacités de la nouvelle version de l'un des frameworks frontend les plus populaires" . Dans la leçon, les participants, accompagnés d'un expert:
- Considérez les principales différences dans la syntaxe de vue2 de vue3;
- comprendra comment travailler avec vue-router et VueX dans la nouvelle version du framework;
- créez un projet Vue 3 à partir de zéro en utilisant Vue-cli.
Que vous soyez un développeur back-end travaillant avec Node.js ou un développeur front-end utilisant Node.js uniquement comme outil de packaging et de regroupement, vous êtes probablement tombé sur un système de dépendance.
5 (, , 5 ), ? , , .
. . .
Normal (runtime) dependencies (c ( ) )
, ?
— , "dependencies" package.json
. ( ) (), NPM (node package manager ) ( npmjs.org
).
, . :
. , (.. >1.2.0 ), (.. <=1.2.0 ), (.. >= , > , <) . ~ (.. "lodash":"~1.2.2, 1.2.2 1.3.0 , , ). "" , semver (.. "lodash": "^1.2.0", , - ).
URL-. , URL, - (, Github tarball-).
. , . , , NPM. " " . , , , -
file://
.
?
, , .
, , , , , . , React Babel, , , , , , ( , ).
, , , , , .
. . .
Peer dependencies ( )
Peer dependencies — , , , , , , . , .
, , ? , , Babel, Babel , , , , Babel -.
, , Babel , , , Babel. , , NPM, , — Babel -, .
Peer dependencies?
Peer dependencies , , , , .
:
, . peer dependency.
, . peer dependency.
, peerDependencies, :
Babel . , Babel, (peer dependency).
Express middleware packages (- ): NPM, peer dependencies. Express , , (middleware) .
Micro Frontend (), , ( ), . Peer dependencies .
Bit components. front-end , , React- Bit (Github), react peer dependency. , .
, React , : , ( , ).
component, Bit’s component hub.
, , package.json, peer dependencies:
, , , React-.
(1KB) — .
. . .
Dev Dependencies (Dev )
, ? , , , , ? .
(Development dependencies) , , .
, , , (linting tools), .
, , dev dependency.
, npm install
npm link
.
, , . , dev dependencies.
dev dependencies?
, , , dev dependencies ( ).
, , -.
- dev- , , npm install
-, dev- .
Dev , .
. . .
(Bundled Dependencies)
, . npm pack
, (tarball-).
, bundledDependencies
( : bundleDependencies
, ), .
{
...
"dependencies": {
"lodash": "1.0.2",
"request": "4.0.1"
},
"bundledDependencies": ["lodash"]
...
}
package.json
, , npm pack
tarball
, lodash
.
(, URL ).
. . .
(Optional dependencies)
, , , . ? NPM , , .
, npm install
- ( - , , - ), .
NPM . , , , :
let foo = null;
try {
foo = require("foo-dep");
} catch (e) {
foo = require("./local-polyfill")
}
//... use foo from here on out
(optional dependencies)?
— . , ? . , , , , , .
, (optional dependencies). , , , CI(Continuous Integration)-. , , , , .
npm install
, , npm install --no-optional
, . , .
. . .
, - NPM , dev-. 3, , .
, , .
, ? , , !
"JavaScript Developer. Professional".