TypeScript:TypeError:无法读取未定义的属性“push”

时间:2015-12-08 10:01:14

标签: javascript angularjs typescript

我正在尝试使用Angular 2创建一个应用程序。现在我遇到了一个我无法解决的问题。

数组的一个功能应该是push(object:T);

我定义了一个对象的数组。但是当我尝试向此数组添加值时,我收到以下错误:TypeError:无法读取未定义的属性“push”。

此错误的主要原因之一是人们忘记定义他们的数组。但我正在定义它,我尝试了多种方式,但仍然是同样的错误。

copyreg.dispatch_table

1 个答案:

答案 0 :(得分:3)

您使用匿名function()语法进行回调;此语法 NOT 保留this。而是做:

        dossiers.forEach((obj, i) => { // IMPORTANT PART HERE!!!
            console.log(obj);
            if(obj.dossierType === Values.Visible) {
                this.activeDossiers.push(obj);
            }
        });