6

我有一个组件

     <p style="padding: 5px">

      <select [(ngModel)]='thisDD' name="nameDD" id="idDD" (ngModelChange)="updateDD(thisDD)" class="form-control">
        <option *ngFor="let thing of thingies" [value]="thing.thingID">{{thing.ThingName}} ({{thing.ThingCode}})</option>
      </select>  

     </p>

其中有一个@OutPut

 @Output() selectedValue = new EventEmitter<object>();

我在我的应用程序中使用它

<my-dropdown (selectedValue)="setValue($event)"></my-dropdown> 

它将组件中的代码调用为“setValue”

setValue(event){
this.currValue=event;
}

当下拉列表的值更改时,这一切都很好,但是我有其他组件依赖于在加载应用程序时设置的值。

有没有办法通过@Output 获取我默认组件的值?或者你将如何做到这一点?

4

1 回答 1

13

只需在 ngOnInit 中发出初始值

export class YourClass {

    @Output() selectedValue = new EventEmitter<object>();

    ngOnInit() {
        this.selectedValue.emit({{your initial value}});
    }
}
于 2018-10-01T23:27:12.637 回答