将参数传递给Ionic 2中的组件

sameera207

我试图将参数(哈希对象)从我的页面之一传递给组件。

我可以从组件的视图访问对象。但是我想要的是先从代码(.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>

如果我直接从视图访问该节点,那么它将起作用 <div *ngFor="let selected of node">

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

塞巴费雷拉斯

Angular2文档中,您可以

使用输入属性设置器来拦截父级的值并对其进行操作。

子组件:

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...
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将参数传递给 Ionic 中的模态?

来自分类Dev

将参数传递给React组件

来自分类Dev

将参数传递给Blazor组件

来自分类Dev

将参数传递给功能组件

来自分类Dev

将几个参数传递给react组件

来自分类Dev

将变量值传递给 ionic2 中的另一个组件

来自分类Dev

Angular 2将字符串参数传递给组件

来自分类Dev

将参数传递给Angular组件中的getter的替代方法

来自分类Dev

如何将参数传递给Camel中的myBatis组件?

来自分类Dev

可以将参数传递给路径中的组件

来自分类Dev

将路径参数传递给子组件作为Angular 2中的输入

来自分类Dev

将路径参数传递给子组件作为Angular 2中的输入

来自分类Dev

将2个参数传递给视图

来自分类Dev

将参数传递给骨干.js中的trigger()传递的参数

来自分类Dev

将参数传递给CodeIgniter中的index()

来自分类Dev

将参数传递给AngularJs中的服务

来自分类Dev

将函数传递给elisp中的参数

来自分类Dev

将参数传递给yii中的函数

来自分类Dev

将参数传递给Ajax中的函数

来自分类Dev

将值传递给脚本中的参数

来自分类Dev

将参数传递给JavaScript中的URL

来自分类Dev

将参数传递给Ajax中的函数

来自分类Dev

将地图距离传递给 Ionic 2 中的 ngModel

来自分类Dev

通过Struts 2中的ModelDriven将参数传递给动作

来自分类Dev

将参数传递给C中的可变参数函数

来自分类Dev

将动态参数传递给PHP中的函数(非参数)

来自分类Dev

如何将参数传递给余烬组件

来自分类Dev

如何将参数传递给表组件?

来自分类Dev

将参数传递给自定义组件