好的我知道答案很简单我只是在Javascript方面经验非常少。在ctx.ExecuteQuery里面,警告会弹出我想要的值。我如何将它下面的userName.Split('|');在这里总新手所以请不要因为不知道我在做什么而取笑我。
编辑:我可以从异步函数返回一个var这是我的源代码 https://msdn.microsoft.com/en-us/library/office/ee535262(v=office.14).aspx?cs-save-lang=1&cs-lang=javascript#code-snippet-2我想回来或者有更好的方法
.directive("test", function($compile){
return {
restrict: "AE",
scope: { data: "=" },
replace:true,
template:"<div id='viz'></div>",
link: function(scope, EL, attrs){
console.log(angular.element(EL).scope(), EL);
console.log(scope);
}
}
})
答案 0 :(得分:1)
答案是否定的。
您应该使用promise
或callback
。
答案 1 :(得分:-1)
您可以在调用异步函数之前缓存userSplit
。并将其设置在异步回调中,就在您的警报所在的位置。
var user = ctx.get_web().get_currentUser();
ctx.load(user);
var userName;
var userSplit;
ctx.executeQueryAsync(function() {
userName = user.get_loginName();
alert(userName);
}, function() {
alert(":(");
userSplit = userName.split('|');
});
&#13;