在我的angularjs服务中,$ http请求,当我使用request.success(function(response){...
这是在控制台>>
中显示的响应"Object {user: Object, shop: Object, products: Array[2]}"
这是用户对象>>
Object {userId: "1", password: "b", email: "b", createDateTime: "2015-05-19 21:35:40", updateDateTime: "2015-05-19 21:35:40"…}
我尝试访问响应的用户对象,例如>>
this.user = response.user
这给了我一个错误>>
类型错误:无法设置属性'用户'未定义...
为什么?
答案 0 :(得分:1)
发生这种情况是因为您位于.success
来电的$http
分支内,所以当您说this.user
时,this
并未参考你认为它做什么。我猜你希望this
引用控制器。最佳做法是在控制器开始时执行类似
var vm = this;
然后,与this
关键字不会发生冲突,您可以指定
vm.user = response.user
在$http
来电中。