我正在尝试从我的Angular Controller设置嵌套对象的值但是我一直收到以下错误:
Cannot read property 'field0' of undefined
我的控制器中的代码是:
$scope.obj = $scope.obj || {};
$scope.autosave = function(){
$window.sessionStorage.setItem("experienceOne", $scope.obj.experience.field0);
}
知道我做错了什么吗?我确定它的东西很小,但我似乎无法弄明白。如何在嵌套对象中设置值。仅供参考,对象结构如下:
obj{
name:"",
experience:{
field0:"",
field1:"",
field2:""
}
}
答案 0 :(得分:0)
您没有在默认分支中设置experience
属性。所以obj.experience.something
会因为experience
未定义而抛出。它应该是
$scope.obj = $scope.obj || {experience: {}}
答案 1 :(得分:0)
您可以使用以下内容设置嵌套对象的属性:
obj.experience.field03 = "aa";