javascript - 在子组件中使用@input 属性以 Angular 2 调用服务

标签 javascript angular

使用 Angular 2中的@input从父组件到子组件的通信数据。我的目的是我想使用值参数@input在子组件中调用服务,但值属性是“undefine”。这是我的子组件:

import { Component, OnInit,  EventEmitter, Input,Output } from     '@angular/core';

@Component({
    selector: 'app-child', 
    templateUrl: './child.component.html'
})

export class ChildComponent  implements OnInit {


    @Input() productId: any; --> working perfectly if bind into html

    constructor() {

    }

    ngOnInit(): void {
        console.log(this.productId) --> undefine?
    //in this methode i will call service to fetch another data from database using parameter productId..


    }
}

如何解决?

最佳答案

我会使用 getter 和 setter,在 setter 内部,您可以调用服务。

// Declare a private underlying variable for the getter and setter
private _productId: any;
@Input()
set productId(id: any){
    this._productId = id;
    // Make your service call here
}
get productId(){
    return this._productId;
}

关于javascript - 在子组件中使用@input 属性以 Angular 2 调用服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42029446/

相关文章:

javascript - JS : Decryption not possible after storing in database (SJCL)

javascript - Moment.js 接受 12 小时和 24 小时时间

angular - 使用 Angular react 形式的现有数组初始化表单数组

java - 如何从 Angular 通过 springboot 重定向

javascript - 这个正则表达式有什么问题 :/(? :(? :^|\s)hide_([^\s]+))+/?

javascript - React Native 中用于处理电子邮件和电话号码链接的任何组件/API

css - Angular 2 - 动态更改后 CSS 元素

javascript - 如何找出缺失的依赖项?

angular - 删除行后无法刷新 p 表中的数据 (PrimeNg)

javascript - 如何在 ReactJS 的 View 之间传递多个状态?