我收到错误。我的Javascript函数返回undefined,同时在函数内警告正确。 在我的第一个控制器上,我这样打电话。
CustomerService.setName(data.name);
在像这样的服务页面上
service.setName = function(name){
var user = name;
alert(user);
return user;
}
我正在我的第二个控制器上访问此返回值。
$scope.name = CustomerService.setName(name);
* CustomerService是服务名称。
答案 0 :(得分:1)
考虑使用get / set
在您的服务中,您可以
app.service("CustomerService", function() {
var service = {};
service.setName = function(name){
user = name;
// optional return if you feel the need to
}
service.getName = function(){
return user;
}
return service;
})
您当前的service.setName
不会保留name
因为它存储在本地变量中。
希望这有帮助
答案 1 :(得分:0)
即使函数需要,下面也没有给出参数。
$scope.name = CustomerService.setName();
答案 2 :(得分:0)
使用" var"创建变量创建一个局部变量,所以当你再次调用该函数时,该值就不存在了。只有当您使用该函数提供参数时,它才会起作用。
答案 3 :(得分:0)
您没有为此函数service.setName()提供任何参数。因此name设置为undefined,这会导致函数返回undefined。