首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在角2中,我不能在不重新加载的情况下在子组件之间路由。

在角2中,我不能在不重新加载的情况下在子组件之间路由。
EN

Stack Overflow用户
提问于 2016-04-28 09:03:50
回答 1查看 733关注 0票数 2

我们有三个组成部分。AppComponent包含两个子组件,即LoginComponent和LandingPageComponent。@Rougeconfig已经在AppComponent中定义了。但不幸的是,我无法从登录到LandingPage。

AppComponent

代码语言:javascript
复制
import {Component} from 'angular2/core';
import { RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS } from 'angular2/router';
import {LoginComponent} from '../app-components/login/login.component';
import {LandingPageComponent} from '../app-components/landing-page/landing-page.component';

@Component({
    selector: 'My-app',
    templateUrl: './app/app-components/app.html',
    directives: [ROUTER_DIRECTIVES],
    providers: [ROUTER_PROVIDERS]     
})
@RouteConfig([
  {
    path: '/login',
    name: 'Login',
    component: LoginComponent,
    useAsDefault: true
  },
  {
    path: '/landing-page',
    name: 'Landing-page',
    component: LandingPageComponent,
   }
])
export class AppComponent { }

LoginComponet

代码语言:javascript
复制
import {Component} from 'angular2/core';
import { RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS, Router} from 'angular2/router';
import {NgForm}    from 'angular2/common';
import {LandingPageComponent} from '../landing-page/landing-page.component'

@Component({
    selector: 'login',
    template: '<a [routerLink]="['Landing-page']">Landing-page</a>',
    styleUrls:['./app/app-components/login/login.css'],
    directives: [ROUTER_DIRECTIVES],
    providers: [ROUTER_PROVIDERS] 

})

export class LoginComponent { 

    //DECLARATIONS
   login={username:"",password:""} ; 
   active = true;
   submitted = false;
   router: Router;

   logineduser=logindec; 
   //constructor(private _router:Router) {}

  constructor(_router: Router){   
      this.router = _router;

   }
  onauth() { 
      this.submitted = true;
      if(this.logineduser.username==this.login.username&&this.logineduser.password==this.login.password){
         this.router.navigateByUrl('/landing-page');
         location.reload();
      }      
   }       
}

var logindec={
    username:"sampleuser",
    password:"a"
} ; 

LandingPageComponet

代码语言:javascript
复制
import {Component} from 'angular2/core';

@Component({
    selector: 'login',
    template:'<h1>Landing Page</h1>'
})
export class LandingPageComponent {}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-28 09:05:04

删除

代码语言:javascript
复制
providers: [ROUTER_PROVIDERS] 

除了你的AppComponent

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36909988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档