本文介绍了在2角两个组件(页)之间传递值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用的角度2β(打字稿)。

我有两个组成部分(其实它们是两个页面太)。他们不是父母与子女的关系。

我想通过一个值第二个组成部分(页),当我点击第一个组件(页)。

链接

我知道URL参数,通过路由器的方式。但我不希望显示在链接此参数。有没有其他办法?

感谢您!


解决方案

的正规途径是建立一个注射服务和注入服务为需要数据的任何组件。由于该服务是一个单独的组件将访问相同的数据。它不应该的问题,他们是在不同的页面。 。

import {Component, Injectable} from 'angular2/core'

// your shared service
// provide reference in parent component or bootstrap
@Injectable()
export class myService {
  sharedData:string = "String from myService"
}

@Component({
  selector: 'page1',
  providers: [],
  template: `
    <div>
      <b>Component Page1 - shared data:</b> {{SharedData}}
    </div>
  `,
  directives: [],
})
export class Page1 {
  constructor(aService: myService) {
    this.SharedData = aService.sharedData
  }
}

@Component({
  selector: 'page2',
  providers: [],
  template: `
    <div>
      <b>Component Page2 - shared data:</b> {{SharedData}}
    </div>
  `,
  directives: [],
})
export class Page2 {
  constructor(aService: myService) {
    this.SharedData = aService.sharedData
  }
}

这篇关于在2角两个组件(页)之间传递值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-13 03:14