В моем приложении с угловым 2 у меня возникают проблемы с импортными зависимостями, отличными от угловых или моих компонентов приложения. (Например, angular2-момент)Импорт, отличный от angular2 deps breaks webapp компиляция
Я <base href="/">
работает приложений через основные (compilation.js содержит все модули приложения):
<script src="/app/compilation.js"></script>
<script>
System.config({
packages: {
app: {
format: 'register',
defaultExtension: 'js'
}
}
});
System.import('main')
.then(null, console.error.bind(console));
</script>
Как только я впрыснуть что-нибудь от других, чем угловой node_modules его приводит к сбою компиляции. и я получаю 404 от основного.
import {Component} from "angular2/core";
import {ROUTER_PROVIDERS} from 'angular2/router';
import {HTTP_PROVIDERS} from "angular2/http";
import "rxjs/Rx";
import {HeaderComponent} from "./header/header.component";
import {HomeComponent} from "./home/home.component";
import {SidebarComponent} from "./side-bar/sidebar.component";
import {RouteConfig, ROUTER_DIRECTIVES} from "angular2/router";
import {enableProdMode} from "angular2/core";
//import {TimeAgoPipe} from 'angular2-moment'; <-- this breaks main (404)
Ошибка консоли:
GET http://localhost:3001/main 404 (Not Found)
scheduleTask @ angular2-polyfills.js:126
TSconfig является:
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"outDir": "app/",
"outFile": "app/compilation.js",
"declaration": true
},
"exclude": [
"node_modules",
"typings/main",
"typings/main.d.ts"
]
}
Любая помощь, чтобы сохранить больше волос на голове будет высоко оценен.
Я предполагаю, что вы подразумеваете «импорт» вместо «инъекции». Инъекция настраивает поставщиков и добавляет параметры конструктора к сервисам и компонентам, которые передаются с помощью углового DI. –