Я создаю приложение Angular2 в основном проекте ASP.Net. У меня есть systemJS, настроенный для сопоставления сторонних модулей, но я получаю ошибки компиляции.Как машинопись знает о systemJS config
Мой index.html ссылается на файл systemJS.config.js, и я думаю, что это правильно. Однако index.html - это файл времени выполнения, и я не думаю, что компилятор машинописного текста знает об этом.
Как машинопись знает о systemjs (и его конфигурации) во время компиляции?
Один из сторонних модулей - загрузка файла ng2.
systemjs.config.js имеет это:
var map = {
'app': 'lib/spa', // 'dist',
'rxjs': 'lib/js/rxjs',
'angular2-in-memory-web-api': 'lib/js/angular2-in-memory-web-api',
'@angular': 'lib/js/@angular',
'ng2-file-upload': 'lib/js/ng2-file-upload/ng2-file-upload'
};
var config = {
defaultJSExtensions: true,
map: map,
packages: packages
}
System.config(config);
Это ссылка из index.html как:
<script>
System.import('app').catch(function(err){ console.error(err); });
</script>
В моем компоненте я использую импорт, как это:
import {FILE_UPLOAD_DIRECTIVES, FileUploader} from 'ng2-file-upload';
Я получаю эту ошибку компилятора:
error TS2307: Cannot find module 'ng2-file-upload'.
Моя мысль заключается в том, что машинопись не знает о настройке псевдонима ng2-file-upload на карте для systemJS. Как машинопись знает об этом?