[英]Nativescript Angular2 Route Provider
我正在尝试使用angular2跟随nativescript的快速入门演示。 当我谈到路由器时,它开始出现故障。 错误消息: RouterOutletMap没有提供者! 这是我的代码,
main.ts
#############
import {nativeScriptBootstrap} from "nativescript-angular/application";
import {ROUTER_DIRECTIVES,ROUTER_PROVIDERS} from '@angular/router-deprecated';
import {NS_ROUTER_DIRECTIVES, NS_ROUTER_PROVIDERS} from "nativescript-angular/router";
import {AppComponent} from "./app.component";
nativeScriptBootstrap(AppComponent, [ROUTER_PROVIDERS]);
和
app.component.ts
############
import {Component} from "@angular/core";
import {nativeScriptBootstrap} from "nativescript-angular/application";
import {RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS} from '@angular/router-deprecated';
import {NS_ROUTER_DIRECTIVES, NS_ROUTER_PROVIDERS} from "nativescript-angular/router";
import {FirstComponent} from "./first.component";
import {SecondComponent} from "./second.component";
@Component({
selector: 'navigation-test',
providers: [NS_ROUTER_PROVIDERS],
directives: [NS_ROUTER_DIRECTIVES],
template: `<page-router-outlet></page-router-outlet>`
})
@RouteConfig([
{ path: '/first', component: FirstComponent, name: 'First', useAsDefault: true },
{ path: '/second', component: SecondComponent, name: 'Second' },
])
export class AppComponent { }
在nativescript github上的问题的解决方案在这里 ,你应该导入NS_ROUTER_DIRECTIVES
, NS_ROUTER_PROVIDERS
从"nativescript-angular/router-deprecated/ns-router-deprecated"
像这样:
import {NS_ROUTER_DIRECTIVES, NS_ROUTER_PROVIDERS} from "nativescript-angular/router-deprecated/ns-router-deprecated";
在下面,我删除了不必要的导入和提供程序,并...
主要
import {nativeScriptBootstrap} from "nativescript-angular/application";
import {AppComponent} from "./app.component";
nativeScriptBootstrap(AppComponent);
app.component.ts
import {Component} from "@angular/core";
import {RouteConfig} from '@angular/router-deprecated';
import {NS_ROUTER_DIRECTIVES, NS_ROUTER_PROVIDERS} from "nativescript-angular/router-deprecated/ns-router-deprecated";
import {FirstComponent} from "./first.component";
import {SecondComponent} from "./second.component";
@Component({
selector: 'navigation-test',
directives: [NS_ROUTER_DIRECTIVES],
providers: [NS_ROUTER_PROVIDERS],
template: `<page-router-outlet></page-router-outlet>`
})
@RouteConfig([
{ path: '/first', component: FirstComponent, name: 'First', useAsDefault: true },
{ path: '/second', component: SecondComponent, name: 'Second' },
])
export class AppComponent { }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.