2016-05-11 16 views

Antwort

29

Es ist der Name für den Geltungsbereich im Repository NPM verwendet

http://blog.npmjs.org/post/116936804365/solving-npms-hard-problem-naming-packages

@angular wird der Bereichsname und alle Module (core, compiler, common, platform-..., testing, router, ...) sind in diesem Umfang veröffentlicht.

  • Angular2 Versionen nach beta.x und damit >= Angular2 RC.0 Verwendung @angular

  • Versionen <= Angular2 beta.x Verwendung angular2

Einer der Gründe, warum sie es geändert wird, dass sie als 2 in Angular2 eine falsche Bezeichnung . Derzeit (Januar 2017) sind wir bei der Angular-Version 4.0.0-beta.1, die deutlich machen sollte, dass 2 keinen Sinn ergibt.

10

aus der Winkel Git Seite:

„Alle Pakete werden nun unter dem @angular npm Umfang verteilt> Dies ändert sich, wie Angular über npm installiert ist und wie Sie den Code importieren..“

Und von den NPM Dokumentationsseite:..

„Scopes ist wie Namespaces für NPM-Module Wenn ein Name des Pakets beginnt> mit @, dann ist es ein scoped Paket Der Umfang ist alles dazwischen > das @ und der Schrägstrich. "

Hoffe das hilft.

https://github.com/angular/angular/blob/master/CHANGELOG.md

https://docs.npmjs.com/getting-started/scoped-packages

4

Die @ zeigt es ein privates npm Paket. Nur das autorisierte Team darf neue Versionen veröffentlichen, es steht jedoch öffentlich zum Download zur Verfügung. Indem Sie es als npm-Paket veröffentlichen, können Sie den Knoten als Paketmanager für Ihre Anwendung verwenden und Knoten Abhängigkeiten mit anderen Paketen und Versionen verwalten lassen. Sehr hilfreich.

1

Nehmen wir den Fall von import { NgModule } from '@angular/core'; als ein Beispiel.
Wenn Sie github source betrachten, ist @angular nur ein Ordnername. Nehmen wir @ angular/core. Inside ist Index.ts, die weiter ./src/core exportiert, was .src/core.ts bedeutet, da die .ts-Erweiterung angenommen wird. Wenn Sie nach ./src/core.ts suchen, finden Sie, dass es .metadata exportiert. Wenn Sie in ./metadata gehen, finden Sie ngmodule.ts. Darin ist @NgModule definiert!

0

nichts Besonderes hier, Zeichen „@“ ist die Art und Weise der Ordner @angular innerhalb node_modules Ordner zu anderen zu unterscheiden, weil es der Ordner enthält alle Module, die auf Ihre Umgebung

Winkel laufen müssen, ist