импортировать { * } из @angular вместо angular2

Я немного запутался здесь в angular2. Многие примеры показывают, как

import { Component } from "@angular/core"

Но на самом деле в node_module существует angular2каталог. Так по логике должно быть

import { Component } from "angular2/core" 

В чем разница между этими двумя?


person Nishchit    schedule 10.05.2016    source источник
comment
Приложения Angular являются модульными. Они состоят из множества файлов, каждый из которых предназначен для определенной цели. Angular сам по себе является модульным. Это набор библиотечных модулей, каждый из которых состоит из нескольких связанных функций, которые мы будем использовать для создания нашего приложения. Когда нам нужно что-то из модуля, мы это импортируем. Здесь мы импортируем функцию декоратора Angular Component из @angular/core, потому что она нужна нам для определения нашего компонента. app/app.component.ts (импорт) import { Component } from '@angular/core';   -  person mayur    schedule 10.05.2016
comment
@mayur, я думаю, вы могли неправильно понять вопрос. ОП не спрашивает, что и почему используются функции импорта, но спрашивает об использовании символа "@". Ответ ниже от Гюнтера объясняет это. Проверьте журнал изменений по ссылке, которую они разместили.   -  person redfox05    schedule 20.10.2016


Ответы (1)


Это изменение было введено в обновлении с beta.17 до rc.0.

https://github.com/angular/angular/blob/master/CHANGELOG.md#200-rc0-2016-05-02

person Günter Zöchbauer    schedule 10.05.2016
comment
Есть идеи, почему переключатель? - person Ryan Rahlf; 15.05.2016
comment
@RyanRahlf AFAIK существуют ограничения имен для пространств имен в NPM, и @ является одним из них. Им также не нужны разные пространства имен для разных версий Angular, только одно для всего Angular. - person Günter Zöchbauer; 15.05.2016
comment
что, если вы используете модуль ниже beta.17 в проекте r.c.? Какой синтаксис вы используете тогда? - person garrettmac; 25.09.2016
comment
Какой модуль бета 17? Я уверен, что модули Angular2 не будут работать вместе, если версии различаются. Возможно, если повезет, вы сможете заставить что-то работать, если версии отличаются лишь немного, но всегда было так много изменений, что это очень маловероятно. - person Günter Zöchbauer; 25.09.2016
comment
@GünterZöchbauer. Если я импортирую только один компонент, например import { Component } from '@angular/core' вместо import * from '@angular/core', повлияет ли это на эффективность кода, не на первый взгляд? - person Suren Srapyan; 28.02.2017
comment
Извините, не знаю об этом. Я сам не пользуюсь TS. - person Günter Zöchbauer; 28.02.2017
comment
stackoverflow.com/questions/33305954/ также ничего не говорит об эффективности. Я думаю, это не будет иметь значения. - person Günter Zöchbauer; 28.02.2017