То, что я пытаюсь сделать, - сделать Angular 2 простых компонента в приложении Angular 1. Я прошел через это официальное руководство. Я столкнулся с некоторыми проблемами с инъекцией:
Unknown provider: $$angularInjectorProvider <- $$angularInjector
Трассировка стека не имеет смысла, но очевидно, что ошибка возникает где-то глубоко в самой Angular:)
Структура моего текущего приложения выглядит так:
ng1.module.ts(точка входа):
'use strict';
import { downgradeComponent } from '@angular/upgrade/static';
const angular = require('./lib/angular-wrapper');
const app = angular.module('application', []);
import { AppComponent } from './components/app/app.component.ts';
import { Ng2Module } from './ng2.module.ts';
app.directive(
'app',
downgradeComponent({component: AppComponent}) as angular.IDirectiveFactory
);
angular.bootstrap(document.body, ['application']);
ng2.module.ts:
import 'reflect-metadata';
import '@angular/core';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { UpgradeModule } from '@angular/upgrade/static';
import { AppComponent } from './components/app/app.component.ts';
@NgModule({
imports: [ BrowserModule ],
declarations: [ AppComponent ],
entryComponents: [ AppComponent ]
})
export class Ng2Module {
ngDoBootstrap() {}
}
И app.component.ts:
import 'reflect-metadata';
import { Component } from '@angular/core';
@Component({
selector: 'app',
template: "<h1>HELLO WORLD!</h1>"
})
export class AppComponent {}
Запрос какой-либо идеи: что может вызвать описанную выше ошибку?