2016-02-21 3 views
1

Я новичок в angular2 и хочу знать цель следующих импортных операций, которые мы делаем в нашем приложении angular2.Какова цель этих угловых2 импорта?

<script src="node_modules/es6-shim/es6-shim.min.js"></script> 
<script src="node_modules/systemjs/dist/system-polyfills.js"></script> 
<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script> 
<script src="node_modules/systemjs/dist/system.src.js"></script> 
<script src="node_modules/rxjs/bundles/Rx.js"></script> 
<script src="node_modules/angular2/bundles/angular2.dev.js"></script> 
<script src="node_modules/angular2/bundles/http.dev.js"></script> 

поэтому мои вопросы, касающиеся этого импорта являются:

  • , что этот импорт для?
  • выполняет ли последовательность этих импортных измерений?
  • Есть ли другие полезные импорт, о которых мы должны знать?

Заранее спасибо.

ответ

1

Вот подробности о том, что вы указали в элементах сценария:

  • Две первых файлов не является необходимым, если вы используете машинопись и configuted выхода ES5.
  • angular2-polyfills.js - Содержит ZoneJS (для запуска обнаружения изменений - см What is the Angular2 equivalent to an AngularJS $watch?) и отражают-метаданные (для установки метаданных объектов из декораторов)
  • system.src.js - SystemJS, библиотека который управляет модулями. Короче говоря, когда вы используете импорт и экспорт в TypeScript, соответствующий скомпилированный код опирается на него.
  • Rx.js - RxJS, библиотека, которая обеспечивает реализацию концепций реактивного программирования. Короче говоря, он обеспечивает реализациюArion наблюдаемых и их операторов. EventEmitters, HTTP полагаются на это.
  • angular2.dev.js - Angular2 ядро ​​пучка
  • http.dev.js - HTTP поддержка Angular2
+0

Это отличный ответ. Возможно, вы могли бы рассказать мне, почему Angular.io 5 мин. Быстрый старт перечисляет zonejs и метаданные отражения как зависимости в пакете.json, когда он выглядит угловым2-полиполком? – Wainage

3

Я не вижу импорт в вашем примере кода. Его просто включают файлы различных библиотек в веб-страницу. Если вы читали некоторые из них один за другим:

  • ES6-shim.min.js - добавляет функции ES6 языка для браузеров (full list)
  • Rx.js добавляет библиотеку Наблюдаемые (GitHub RxJS)
  • http.dev.js - добавляет модуль angular2 $ HTTP делать запросы

Таким образом, вы можете Google каждый из имен и Figur для себя, если это применимо для вашего проекта.

Подробнее о модулей и фактической imports в ES2015/ES6 вы можете прочитать здесь https://ponyfoo.com/articles/es6-modules-in-depth, например.

«Полезный импорт, о котором мы должны знать?»

Полностью зависит от ваших потребностей. Я предположил, что angular2.dev.js и http.dev.js будут полезны для начала.

"действительно ли имеет место последовательность этих импортных поставок?"

Не сейчас, но только если вы используете правильную систему модулей, чтобы браузер мог загружать отсутствующие части перед выполнением блоков, которые зависят от них. А также файл загрузчика (system.js/require.js) должен находиться в первом перед всеми другими файлами.

+1

'system.js' должен быть импорт, прежде чем' angular' файл в противном случае угловой будет путайте с того места, где привязать импорт, а также выдает ошибку system.js в не определенном виде. –

+0

@PardeepJain, вот что я подразумевал »... И также файл загрузчика (system.js/require.js) должен быть в первом перед всеми другими файлами». – shershen

+0

oops я не читал этот момент «извините –

Смежные вопросы