微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 角度2,传递完整对象作为参数

我学习角度2和我有一个问题.

实际上,我将每个组件属性传递给模板,如下所示:

import {Component,bootstrap,NgFor,NgModel} from 'angular2/angular2';
import {TodoItem} from '../item/todoItem';


@Component({
  selector: 'todo-list',providers: [],templateUrl: 'app/todo/list/todoList.html',directives: [NgFor,TodoItem,NgModel],pipes: [],styleUrls:['app/todo/list/todoList.css']
})
export class TodoList {

  list:Array<Object>;

  constructor(){
    this.list = [
      {title:"Text 1",state:false},{title:"Text 2",state:true}
    ];
  }
}



<todo-item [title]="item.title" [state]="item.state" *ng-for="#item of list"></todo-item>

import {Component,Input} from 'angular2/angular2';


@Component({
  selector: 'todo-item',templateUrl: 'app/todo/item/todoItem.html',directives: [],styleUrls:['app/todo/item/todoItem.css']
})
export class TodoItem {

  @input()
  title:String;

  @input()
  state:Boolean;


}

我想知道我是否可以通过传递每个属性直接传递完整的对象内的模板?

<todo-item [fullObj]="item" *ng-for="#item of list"></todo-item>

解决方法

是的,将整个对象作为属性传递是完全正确的.

语法相同,所以只需为整个对象创建一个属性.

@Component({
  selector: 'my-component'
})
export class MyComponent{
  @input() item;
}
<my-component [item]=item></my-component>

这是一个例子:http://www.syntaxsuccess.com/viewarticle/recursive-treeview-in-angular-2.0

原文地址:https://www.jb51.cc/js/152230.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐