如何将javascript对象传递到子函数作用域
我有一个函数,它将进行REST调用,但在获取身份验证令牌之前,它无法执行此操作 因此,我将REST调用包装在auth token调用承诺的“then”中,如下所示:如何将javascript对象传递到子函数作用域,javascript,angularjs,scope,angular-promise,Javascript,Angularjs,Scope,Angular Promise,我有一个函数,它将进行REST调用,但在获取身份验证令牌之前,它无法执行此操作 因此,我将REST调用包装在auth token调用承诺的“then”中,如下所示: var RESTCall = function() { return authTokenPromise.then(function() { return $http.get('userService' { userId: 1234, someFlag: true }); }); };
var RESTCall = function() {
return authTokenPromise.then(function() {
return $http.get('userService' {
userId: 1234,
someFlag: true
});
});
};
这会导致等待触发对userService的调用,直到来自获取auth令牌的服务的authToken承诺得到解决
当我试图删除设置userId和someFlag的硬编码参数时,问题就出现了。我想做的是:
var RESTCall = function(params) {
return authTokenPromise.then(function() {
return $http.get('userService' {
userId: params.userId, // params is undefined
someFlag: params.flag // params is undefined
});
});
};
如何将参数传递到由函数{…}创建的匿名函数作用域中?您不需要,只需使用参数即可。这不是很好吗?应该行的。你在哪里打电话?你确定在所有事件中你都传递了一个对象吗?使用jquery函数$。proxy@dandavis@Bergi是正确的,它让我走上了正确的道路。。。我不需要做任何事情,除了在我的实际代码中,这里的示例中没有这样的参数:authTokenPromise.thenparams,除了authTokenPromise没有返回任何内容之外,因此RESTCall声明中的参数被.thenfunctionparams{}中未定义的参数覆盖。谢谢你们俩。。。愚蠢的打字错误。。。我的错。@Bergi如果你想创造一个答案,我会接受的!