web-dev-qa-db-fra.com

NPM, package.json - comment ajouter une dépendance avec "@" dans le nom

J'essaie d'installer le nouveau Angular 2 RC dans mon projet. Le nom du module dans NPM est passé de angular2 à @angular/core. Mais lorsque je l'ajoute à mon package.json, il tente d'installer le module angular/core à la place et ne le trouve pas. Quand je tape

npm install @angular/core

dans la console, alors Angular 2 est correctement installé. Savez-vous pourquoi package.json oublie "@" dans le nom du module et comment y remédier?

// Edit: J'ai découvert que ce n'est pas juste un nom, mais "@" indique un scoped package. Quoi qu'il en soit, cela devrait fonctionner avec package.json (comme décrit dans documentation ), mais pour certaines raisons, pas . J'utilise Visual Studio 2015 avec les dernières mises à jour et mon projet est un ASP Projet .NET MVC 6 (livré avec le support npm)

8
emsi

Vous devez utiliser le package.json de Angular2 Docs :

{
  "dependencies": {
    "@angular/common": "2.0.0-rc.0",
    "@angular/compiler": "2.0.0-rc.0",
    "@angular/core": "2.0.0-rc.0",
    "@angular/http": "2.0.0-rc.0",
    "@angular/platform-browser": "2.0.0-rc.0",
    "@angular/platform-browser-dynamic": "2.0.0-rc.0",
    "@angular/router-deprecated": "2.0.0-rc.0",
    "@angular/upgrade": "2.0.0-rc.0",
    "systemjs": "0.19.27",
    "es6-shim": "^0.35.0",
    "reflect-metadata": "^0.1.3",
    "rxjs": "5.0.0-beta.6",
    "zone.js": "^0.6.12",
    "angular2-in-memory-web-api": "0.0.5",
    "bootstrap": "^3.3.6"
  },
  "devDependencies": {
    "concurrently": "^2.0.0",
    "lite-server": "^2.2.0",
    "TypeScript": "^1.8.10",
    "typings": "^0.8.1"
  }
}

Assurez-vous ensuite et exécutez npm install dans le répertoire racine.

Merci @Dov Benyomin Sohacheski, je n’étais pas au courant de ce fichier . Malheureusement, mon problème n’a pas été résolu. La clé était mon utilisation de Visual Studio 2015 et la possible version obsolète de NPM qui l'accompagnait. J'ai installé Node.js et configuré Visual Studio pour utiliser cette version au lieu de la version intégrée et cela a commencé à fonctionner.

Ici est un tutoriel sur la façon de faire en sorte que VS utilise sa propre version de GIT au lieu de la version intégrée. Les étapes pour NPM sont fondamentalement les mêmes. Une différence importante est que vous ne pouvez pas simplement décocher $(DevEnvDir)\Extensions\Microsoft\Web Tools\External, car il existe également d'autres outils. Vous devez donc ajouter l'emplacement de NPM au-dessus.

Ma configuration finale:  configuration

N'oubliez pas de redémarrer VisualStudio après cela.

2
emsi