Внедрение зависимостей с необязательным параметром в Angular2
У меня есть несколько компонентов, которые требуют одинаковую зависимость, которая требует строку для конструктора. Как я могу сказать angular2 использовать конкретный экземпляр типа для DI?
Например:
ChatUsers.ts:
@Component({
selector: "chat-users"
})
@View({
directives: [],
templateUrl: '/js/components/ChatUsers.html'
})
export class ChatUsers {
constructor(public currentUser : User) {
}
}
и app.ts:
/// <reference path="../libs/typings/tsd.d.ts" />
import {Component, View, bootstrap} from 'angular2/angular2';
import {User} from "User";
// How to create a user, e.g. new User('John') and use it for DI?
@Component({
selector: 'chat-app'
})
@View({
directives: [ ],
template: `
<div> Some text
</div>`
})
class ChatApp {
constructor(public user: User) {
// do something with user
}
}
bootstrap(ChatApp, [ User ]);
User.ts
export class User {
name: string;
constructor(name: string) {
this.name = name;
}
}
Если запустить этот код, ошибка:
Не удается разрешить все параметры для пользователя (?). Убедитесь, что все они имеют действительный тип или аннотации.
Я использую самую последнюю версию angular2:2.0.0-alpha.44