【问题标题】:How do I pass from parent to child component which is not nested?如何从父组件传递到未嵌套的子组件?
【发布时间】:2018-10-25 07:02:54
【问题描述】:

我有 2 个组件,list componentdetails component。如何将对象从列表组件传递到详细信息组件?

我知道我必须使用@Input() 装饰器,但问题是details component 没有嵌套在list component 中。它完全靠自己。

【问题讨论】:

    标签: angular decorator


    【解决方案1】:

    您可以有一个父组件来包装两者并控制它们之间的通信,或者您可以使用一个共享服务来集中数据。

    <parent>
      <list [items]="items" (onSelectItem)="itemSelected()"></list>
      <detail [item]="selectedItem"></list>
    </parent>
    

    Js

    class ParentComponent {
      items = [...],
      selectedItem = null;
    
      itemSelected(item){
        this.selectedItem  = item;
      }
    }
    

    【讨论】:

      【解决方案2】:

      最简单的方法是使用服务。看一看 https://angular.io/guide/component-interaction

      【讨论】:

        猜你喜欢
        • 2019-08-09
        • 2018-03-04
        • 2017-08-23
        • 2021-04-25
        • 2020-07-30
        • 2022-01-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多