Angular 将参数传递给离子2中的组件

Angular 将参数传递给离子2中的组件,angular,typescript,ionic-framework,ionic2,ionic3,Angular,Typescript,Ionic Framework,Ionic2,Ionic3,我试图将一个参数(散列对象)从我的一个页面传递到一个组件 我可以从组件的视图访问对象。但是我想首先从代码(.ts)中读取它,然后传递到视图 这是我的密码 #main page component <selected-options [node]="node"></selected-options> #selected-options component code import { Component, Input } from '@angular/core'; impo

我试图将一个参数(散列对象)从我的一个页面传递到一个组件

我可以从组件的视图访问对象。但是我想首先从代码(
.ts
)中读取它,然后传递到视图

这是我的密码

#main page component
<selected-options [node]="node"></selected-options>

#selected-options component code
import { Component, Input } from '@angular/core';
import { NavController, NavParams } from 'ionic-angular';

@Component({
  selector: 'selected-options',
  templateUrl: 'build/components/selected-options/selected-options.html',
  inputs: ['node']
})
export class SelectedOptions {

  @Input() node: any;
  private selectedNodes: any;      

  constructor(public ryvuss: Ryvuss, public nav: NavController, public navParams: NavParams) {
     // I want to read the node object in here
     this.node = navParams.get('node');
     this.selectedNodes = //dosomething with node
  }
}

#selected-options component html view
<div *ngFor="let selected of selectedNodes">
  //loop
</div>
#主页组件
#所选选项组件代码
从“@angular/core”导入{Component,Input};
从“离子角度”导入{NavController,NavParams};
@组成部分({
选择器:“选定选项”,
templateUrl:'build/components/selected options/selected options.html',
输入:[“节点”]
})
导出类选择选项{
@Input()节点:任意;
私有选择节点:任意;
构造函数(公共ryvuss:ryvuss、公共nav:NavController、公共navParams:navParams){
//我想在这里读取节点对象
this.node=navParams.get('node');
this.selectedNodes=//dosomething with node
}
}
#选定选项组件html视图
//环路
如果我直接从视图访问节点,它将工作

但是如何从组件代码本身访问传递到组件的参数呢?

从,您可以

使用输入属性设置器截取并处理来自的值 父母

子组件:

import { Component, Input } from '@angular/core';

@Component({
  selector: 'name-child',
  template: `
    <h3>"{{name}}"</h3>
  `
})
export class NameChildComponent {

  _name: string = '<no name set>';

  @Input()
  set name(name: string) {
    // Here you can do what you want with the variable
    this._name = (name && name.trim()) || '<no name set>';
  }

  get name() { return this._name; }
}
import { Component } from '@angular/core';

@Component({
  selector: 'name-parent',
  template: `
    <h2>Master controls {{names.length}} names</h2>
    <name-child *ngFor="let name of names"
      [name]="name">
    </name-child>
  `
})
export class NameParentComponent {
  // Displays 'Mr. IQ', '<no name set>', 'Bombasto'
  names = ['Mr. IQ', '   ', '  Bombasto  '];
}

再次非常感谢你帮助我,我被我的下一个问题困住了,如果你不介意看一看,当你有空的时候,很高兴我能帮忙:)当然,我会看一看
@Component({
  selector: 'selected-options',
  templateUrl: 'build/components/selected-options/selected-options.html'
})
export class SelectedOptions {

  private selectedNodes: any;      

  @Input()
  set node(node: any) {
    // Here you can do what you want with the variable
    this.selectedNodes. = ...;
  }

  constructor(public ryvuss: Ryvuss, public nav: NavController) {
    // your code...
  }
}