簡體   English   中英

Angular JS-無法將對象推入范圍數組

[英]Angular JS - Cannot push object into scope array

我肯定我缺少一些可能非常基本的東西,但是似乎無法解決這個問題。 我很容易嘗試在單擊時將對象推入作用域數組。 我當前收到錯誤消息: TypeError: Cannot read property 'push' of undefined(…)

這是到目前為止我得到的一個例子:

var app = angular.module('myApp', []);    

app.factory('MyService', function($http, $q, $timeout){

    var My_Stored_Data = {}

    return {

        template: function(){

            var template = { data1: "", data2: "", data3: "", data4: "" }
            return template

        }

    }              
});

這是控制器:

app.controller('MyController', function ($scope,$q,MyService) {

    $scope.Main_scope = {};

    $scope.add_new_object = function(){

        $scope.Main_scope.My_array.push(MyService.template());
        //This give an error TypeError: Cannot read property 'push' of undefined(…) 
    }

});  

有人有什么想法嗎?

您需要在Main_scope對象中初始化My_array

app.controller('MyController', function ($scope,$q,MyService) {
     $scope.Main_scope = {};
     $scope.Main_scope.My_array =[];

該錯誤是冗長的,並且My_array

您需要在Main_scope變量中定義數組。

$scope.Main_scope = {
    My_array : []
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM