如何使用Angular 6在一个输入中将多个对象发送到嵌套子组件

Posted

技术标签:

【中文标题】如何使用Angular 6在一个输入中将多个对象发送到嵌套子组件【英文标题】:How to send multiple objects to nested child component in one input using Angular 6 【发布时间】:2019-05-07 22:38:48 【问题描述】:

我想使用一个输入向子组件发送多个对象或参数:

<child [OneInput]="object1,object2"></child>

因为在子组件中我使用了set方法从父组件获取数据

@Input()
set OneInput(data)

 console.log(data)

我不想创建一个单独的变量类型let obj= obj1:data1,obj2:data2

请帮忙。

【问题讨论】:

.ts let object = object1,object2 上创建对象,然后在视图中将该变量用作&lt;child [OneInput]="object"&gt;&lt;/child&gt; 有没有可能在不接触ts文件的情况下做到这一点? 【参考方案1】:

如果在您的组件上,您指定了 2 个要在模板中传递的变量,那么您可以直接在 [OneInput] 上传递它

父组件

@Component(
   ...,
   template: `<child [OneInput]="userList: users, positionList: positions"></child>`
)
export class ParentComponent 

   users = ['user1', 'user2'];
   positions = ['position1', 'position2'];


子组件

@Component(...)
export class ChildComponent 

   @Input()
   set OneInput(userList, positionList)     // You can use data or you can destructure it to directly access the objects without having to data.userList and data.positionList
      console.log(userList, positionList)
   

 

【讨论】:

以上是关于如何使用Angular 6在一个输入中将多个对象发送到嵌套子组件的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Angular 2 中将对象转换为 JSON 列表?

如何在 Angular 6 中将工具提示文本包装在 ag-grid [关闭]

如何在 Angular 2 中将对象传递给 NgStyle 指令?

如何在Angular2中将输入设置器指定为可选?

如何在 Angular 中将动态 JSON 对象数组导出为 CSV?

如何在 TypeScript Angular 2 中将 Json 对象数组映射到另一个普通 json 对象