2016-01-30 12 views
9

Czy te stwierdzenia pochodzą z określonego języka/struktury lub czegoś niestandardowego dla Angular 2. Próbuję zrozumieć, jak działa Angular 2.Czy instrukcje importu i eksportu są specyficzne dla Angular 2?

import {} from '' 
export class ... { } 
+3

[oświadczenie o imporcie] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import), [wyciąg z eksportu] (https://developer.mozilla.org/ en-US/docs/Web/JavaScript/Reference/Statement/export) –

Odpowiedz

13

Nie, import i export słowa kluczowe nie są Angular2 specyficzny.

import

Oświadczenie import służy do importowania funkcji, przedmiotów lub prymitywy, które zostały wyeksportowane z modułu zewnętrznego, innego skryptu itp Zasadniczo możemy użyć modułu import załadować wiązek Angular2. Np

'import {Component, and many more here....} from angular2/core` 

Tutaj Component jest moduł, który jest importowany z wiązek Angular2. angular2/core nie jest ścieżką - jest raczej wstępnie zdefiniowanym pakietem Angular2. Jeśli spojrzysz na kod źródłowy angular bundle, zobaczysz, że jest tam System.register("angular2/core", .... - do tej pory zaimportowaliśmy już system.js przed naszym plikiem kątowym w pliku index.html. system.js to moduł ładujący moduł tutaj.

Funkcja import nie jest obecnie zaimplementowana w żadnej przeglądarce. Jest on implementowany w wielu transpilerach, takich jak Traceur Compiler, Babel lub Rollup. Więcej informacji na temat modułu import, can read this tutorial o module importu. Lista importów dla Angular2 można przeczytać o tym here.

eksport

Jak wynika z nazwy, stwierdzenie export służy do eksportowania funkcji, obiektów lub prymitywów z danego pliku (lub modułu). export jest po prostu identyfikatorem, dzięki czemu można go zaimportować poprzez import w innym skrypcie. export to także moduł ES6, taki jak moduł importu. Artykuł o numerze export to here. Jak zasugerował Eric w komentarzach, użyliśmy klasy eksportu w projekcie Angular2 do wyeksportowania klas komponentu. Na przykład możesz odwołać się do mojego repo here.

Powiązane problemy