首页 > 解决方案 > Angular 6:从 SelectionModel 中检索数据

问题描述

我有一个组件,它有一个使用 SelectionModel 的带有复选框的垫表。这是我必须检索所选数据的代码。

fileSelect = new SelectionModel<FileInfo>(true, []);

该方法在表单的 ngSubmit 中调用。

sendFileInterrupt() {
 let selectedFileIds: string[];
    for (let item of this.fileSelect.selected) {
      console.log(item.fileId);
      selectedFileIds.push(item.fileId);
    }

选定的 fileId 已登录控制台,但尝试将其添加到 selectedFileIds 数组时,出现错误

无法读取未定义的属性“推送”

在将数据推入之前,我是否必须实例化或初始化数组?

标签: arraysangulartypescript

解决方案


你需要初始化 let selectedFileIds: string[] = [];

sendFileInterrupt() {
 let selectedFileIds: string[] = [];
    for (let item of this.fileSelect.selected) {
      console.log(item.fileId);
      selectedFileIds.push(item.fileId);
    }

推荐阅读