Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用来自父组件的数据 从'@angular/core'导入{Component,Input}; @组成部分({ 选择器:'aricle root', 模板:“{{article}}” }) 出口类物品{ @Input()文章:对象; 构造函数(){ console.log(this.article);//未定义 } }_Angular_Components - Fatal编程技术网

使用来自父组件的数据 从'@angular/core'导入{Component,Input}; @组成部分({ 选择器:'aricle root', 模板:“{{article}}” }) 出口类物品{ @Input()文章:对象; 构造函数(){ console.log(this.article);//未定义 } }

使用来自父组件的数据 从'@angular/core'导入{Component,Input}; @组成部分({ 选择器:'aricle root', 模板:“{{article}}” }) 出口类物品{ @Input()文章:对象; 构造函数(){ console.log(this.article);//未定义 } },angular,components,Angular,Components,因此,当我将变量{{artical}}从父组件传递到这个组件时,它接收并呈现ok,但是如果我想对该变量执行一些操作,比如在控制台上打印它,该怎么办。它似乎总是未定义的当您的输入绑定发生更改时,您似乎想要得到一个提示。您可以使用ngOnChangeshook监视Input属性更改,并将代码放入其中 import {Component, Input} from '@angular/core'; @Component({ selector: 'aricle-root', template:

因此,当我将变量
{{artical}}
从父组件传递到这个组件时,它接收并呈现ok,但是如果我想对该变量执行一些操作,比如在控制台上打印它,该怎么办。它似乎总是未定义的

当您的
输入
绑定发生更改时,您似乎想要得到一个提示。您可以使用
ngOnChanges
hook监视
Input
属性更改,并将代码放入其中

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

@Component({
  selector: 'aricle-root',
  template: '<li>{{article}}</li>'
})

export class Article {
  @Input() article: object;

  constructor() {
    console.log(this.article); //undefined
  }
}

在构造函数中,尚未设置变量。设置时,您可以访问:

//import { SimpleChanges, SimpleChanges } from '@angular/core';

ngOnChanges(changes: SimpleChanges){
   console.log(changes)
}
从'@angular/core'导入{Component,Input,OnChanges};
@组成部分({
选择器:'aricle root',
模板:“
  • {{article}}
  • ” }) 导出类项目实现OnChanges{ @Input()文章:对象; 构造函数(){ } ngOnChanges(模型){ console.log(文章) } }
    您试图仅在构造函数中打印它?请告诉我如何在该类中访问它的值,如果您知道,请在Ngoninit上打印变量只需添加一点,我们应该在类上实现一次更改,否则我的编辑器会对此抱怨:dYou's very right,我做了更改。
    import {Component, Input, OnChanges} from '@angular/core';
    
    @Component({
      selector: 'aricle-root',
      template: '<li>{{article}}</li>'
    })
    
    export class Article implements OnChanges {
      @Input() article: object;
    
      constructor() {
    
      }
      ngOnChanges(model){
         console.log(article)
      }
    }