繁体   English   中英

Angular 6 数据未绑定到 UI OnInit

[英]Angular 6 data not getting binded to UI OnInit

我有一个问题,我的动态数据没有绑定到 UI 和数据表。 我尝试过使用各种方法,但它不起作用。 我正在使用 smart admin 最新主题来开发网站

当我点击 api 时,我得到了回应。

var tabledata:any[]=[]
Get(){
    this.getservice().subscribe(
        res=>{
            if(res && res.data && res.data.length>0){
                this.tabledata=res.data;
                console.log(this.tabledata);
            }
        }
    )
}

在 html

 <tr *ngFor="let data of tabledata">
        <td>{{data.name}}</td>
        <td>{{data.age}}</td>
    </tr>

您能否尝试在 OnInit 中执行您的 Get 方法? 为什么您的 Get 方法以大写字母开头? 为什么将您的表声明为任何表? 使用类型化的对象我总是更好。 你可以试试下面的代码吗?

    vartabledata: Person[];

    class MyComponent implements OnInit {

    ngOnInit() { this.get()  
      }

    get(){
        this.getservice().subscribe(
            res=>  {this.tabledata = res.data;
                    console.log(this.tabledata);}
       )}
    }

在前面,我建议您添加 *ngIf 以便仅在加载数据时显示表格。

<div *ngIf="tabledata">
<tr *ngFor="let data of tabledata">
        <td>{{data.name}}</td>
        <td>{{data.age}}</td>
    </tr>
</div>

如果即使这样也没有数据,请尝试执行

<div *ngIf="tabledata">
    <tr *ngFor="let data of tabledata">
            {{data | json}}
        </tr>
    </div>

我认为您收到的数据 object 不包含姓名和年龄属性

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM