Я играю с Angular 2.0/TypeScript (Visual Studio 2015, TS 1.6), и я пытаюсь понять, как должен работать «импорт из» , Я определил свой модуль в app.ts с выходным путем, установленным в ./build.TypeScript, что является правильным способом использования 'import'
В bootstrap.ts импортировать модуль с
import {bootstrap} from "angular2/angular2";
import {App} from "./app";
bootstrap(App);
Поскольку у меня есть предназначение сборки, отличное от назначения источника, единственный способ, которым я могу получить эту работу, чтобы добавить каждый файл System.Config ()
<script>
System.config({
packages: {
'./build/bootstrap': { defaultExtension: 'js' },
'./build/app': { defaultExtension: 'js' },
'./build/Components/Comp01/component': { defaultExtension: 'js' },
'./build/Components/Comp02/component': { defaultExtension: 'js' },
},
});
System.import('./build/bootstrap');
</script>
Если изменить оператор импорта для использования с»./build/app.js', то я получаю ошибку TS2307,„не может найти модуль ./build.app.js“ Если я изменю import в './app.ts', тогда компилятор будет счастлив, но, очевидно, браузер затем attem pts для загрузки app.ts, а не app.js
Каков правильный способ использования 'import' в TypeScript, когда вывод находится в другом месте?
То, как вы это делаете, выглядит правильно, хотя я использовал «карту» в моей системной конфигурации. В чем проблема? Жалобуется ли компилятор TypeScript? – ColinE
Как я уже говорил, когда я добавляю отдельные файлы в system.config и устанавливаю defaultExtension, то он работает. Но я не вижу преимущества использования System.import, если мне еще нужно добавить каждый файл в раздел конфигурации, и мне нужно добавить расширение по умолчанию = js. Я ожидал, что system.import будет достаточно умным, чтобы автоматически загружать зависимости, ведь они уже определены в выражении .import в зависимом файле. Именно по этой причине я думал, что не настраиваю system.config correct –