После обновления моего приложения до углового2 до RC4 я возвращаю эту ошибку. У меня есть LoginService
впрыскивается в AppComponent
в новых webpack starter пучок.Угловой RC4, Один или несколько поставщиков для «Приложения» не были определены: [?]
Я пытался вложить AppComponent
в маршруты, но это не сработает. Кроме того, я был в том числе LoginService
внутри index.ts с APP_PROVIDERS, но я получаю другую ошибку
Invalid поставщик - только экземпляры провайдера и типа разрешены, получил: не определено
кладя Также LoginService
в бутстрап, но без эффекта.
Что не так с Angular2 в RC4? Компоненты больше не находятся в дереве?
Это моя конфигурация маршрутизатора для маршрутизатора "3.0.0-beta.2":
export const routes: RouterConfig = [
{ path: '', component: StartPageComponent },
{ path: 'login', component: StartPageComponent },
{
path: 'dashboard', component: 'DashboardComponent',
canActivate: [WebpackAsyncRoute],
children: [
{ path: '', component: 'ContentDesktopComponent' } // must be included
]
},
{ path: '**', component: NoContent }
];
И я хочу иметь LoginService доступное для каждых маршрутов.
Мой app.component выглядит следующим образом:
@Component({
selector: 'app',
pipes: [],
providers: [LoginService, SearchService, TasksService],
directives: [RouterActive],
encapsulation: ViewEncapsulation.None,
styles: [
require('!raw!normalize.css'),
require('!raw!../assets/css/animate.css'),
require('./app.component.scss')
],
template: require('./app.component.html')
})
export class App {
constructor(private translate: TranslateService,
public appState: AppState) {
Resource.map(ENDPOINTS.API.toString(), 'http://localhost:3002/api');
let userLang = navigator.language.split('-')[0]; // use navigator lang if available
userLang = /(fr|en)/gi.test(userLang) ? userLang : 'pl';
translate.setDefaultLang('en');
translate.use('pl');
}
ngOnInit() {
}
}
поставщик не доступны для маршрутизаторов ... сейчас ... в rc4
LoginService:
@Injectable()
export class LoginService {
private user: User = <User>{
avatar_url: '/assets/img/avatars/u6.png'
};
constructor(private rest: Resource<ENDPOINTS, User, User[]>) {
this.rest.add(ENDPOINTS.API, 'users');
}
Пожалуйста, разместите код, демонстрирующий, что вы пытались выполнить. –
Как выглядит класс 'App', включая' @Component() 'decorator? –