J'ai couru 'yo angular' et me suis rendu compte par la suite qu'il installait la version 1.0.8, j'ai désinstallé les composants angular, mais le fichier bower.json d'origine contenait angular-mock et angular-scenario sous 'devDependencies' lorsque je suis connecté. - Ajoutez toutes les composantes 1.2.0-rc.2 angular-mock et angular-scenario sous dépendances au lieu de devDependencies.
Je suis curieux de savoir comment devDependencies est utilisé et si je devrais prendre la peine de le réparer manuellement ou de le laisser tel quel. Existe-t-il un moyen de spécifier sur la CLI de bower comment marquer quelque chose en tant que dépendance de dev?
Après avoir édité le fichier:
{
name: "Angular",
version: "0.0.0",
dependencies: {
json3: "~3.2.4",
jquery: "~1.9.1",
bootstrap-sass: "~2.3.1",
es5-shim: "~2.0.8",
angular-mocks: "1.2.0-rc.2",
angular-sanitize: "1.2.0-rc.2",
angular-resource: "1.2.0-rc.2",
angular-cookies: "1.2.0-rc.2",
angular: "1.2.0-rc.2",
angular-scenario: "1.2.0-rc.2"
},
devDependencies: { }
}
Avant modifications:
{
"name": "Angular",
"version": "0.0.0",
"dependencies": {
"angular": "~1.0.7",
"json3": "~3.2.4",
"jquery": "~1.9.1",
"bootstrap-sass": "~2.3.1",
"es5-shim": "~2.0.8",
"angular-resource": "~1.0.7",
"angular-cookies": "~1.0.7",
"angular-sanitize": "~1.0.7"
},
"devDependencies": {
"angular-mocks": "~1.0.7",
"angular-scenario": "~1.0.7"
}
}
devDependencies
sont destinés aux scripts liés au développement, par exemple. tests unitaires, scripts de packaging, génération de documentation, etc.
dependencies
sont nécessaires pour une utilisation en production et sont également supposés nécessaires pour dev.
Inclure devDependencies
dans dependencies
, comme vous l'avez, ne sera pas nocif; le module regroupera simplement plus de fichiers (octets) lors de l'installation, consommant davantage de ressources (inutiles). D'un point de vue puriste, ces octets supplémentaires pourraient être préjudiciables, cela dépend de votre point de vue.
Pour éclairer un peu, en regardant bower help install
, les modules listés sous devDependencies
peuvent être omis lors de l'installation du module via -p
ou --production
, par exemple:
bower install angular-latest --production
C’est le moyen recommandé d’effectuer une installation autre que sur une plate-forme de développement.
Au contraire, il n’ya aucun moyen d’omettre les modules listés sous dependencies
.
À partir de [email protected] (voir source bower la plus récente ), bower help
donne:
Usage:
bower <command> [<args>] [<options>]
Commands:
cache Manage bower cache
help Display help information about Bower
home Opens a package homepage into your favorite browser
info Info of a particular package
init Interactively create a bower.json file
install Install a package locally
link Symlink a package folder
list List local packages
lookup Look up a package URL by name
Prune Removes local extraneous packages
register Register a package
search Search for a package by name
update Update a local package
uninstall Remove a local package
Options:
-f, --force Makes various commands more forceful
-j, --json Output consumable JSON
-l, --log-level What level of logs to report
-o, --offline Do not hit the network
-q, --quiet Only output important information
-s, --silent Do not output anything, besides errors
-V, --verbose Makes output more verbose
--allow-root Allows running commands as root
See 'bower help <command>' for more information on a specific command.
et plus loin, bower help install
_ donne (voir dernière source ):
Usage:
bower install [<options>]
bower install <endpoint> [<endpoint> ..] [<options>]
Options:
-F, --force-latest Force latest version on conflict
-h, --help Show this help message
-p, --production Do not install project devDependencies
-S, --save Save installed packages into the project's bower.json dependencies
-D, --save-dev Save installed packages into the project's bower.json devDependencies
Additionally all global options listed in 'bower help' are available
Description:
Installs the project dependencies or a specific set of endpoints.
Endpoints can have multiple forms:
- <source>
- <source>#<target>
- <name>=<source>#<target>
Where:
- <source> is a package URL, physical location or registry name
- <target> is a valid range, commit, branch, etc.
- <name> is the name it should have locally.