Kullanıcının bir yorum formu gönderdiği bu Açısal projede çalışıyorum ve yeni yorum zaten gönderilmiş olan yorumlara eklendi. İşte benim kodum.TypeError: undefined özelliği 'push' özelliği okunamıyor, JavaScript
.controller('productCtrl', function($scope, $http, $routeParams, Page){
$scope.product = {};
$scope.review = {};
$scope.comments = {};
routeparm = $routeParams.param;
$scope.review = function(){
var review_box = $scope.review_form.review_box;
$http.post('./comment.php', {
comment : review_box,
code: routeparm
})
.success(function(data){
$scope.comments.push(data.comments);
$scope.review.review_box = '';
})
.error(function(data){
$scope.has_error = true;
$scope.error_message = data;
})
};
Ancak, bir açıklama eklemeye çalıştığımda aşağıdaki hatayı alıyorum.
TypeError: Cannot read property 'push' of undefined
Boş bir $ scope.comments = {}; öyleyse neden bu hatayı alıyorum? Ve bunu nasıl düzeltebilirim? Teşekkürler
json nesnesi için itmek kullanamaz deneyebilirsiniz. Ancak bu, $ scope.comments = []; bunu dizi olarak başlatırsanız. –
Her şeyden önce, neden 'push' bir nesneyi kullanıyor? –