Javascript 角度-我的函数在无限循环中运行
我正在尝试创建一个菜单,允许某些用户访问某些内容: HTML 因为您的方法在每个循环中都会被触发,这会导致无限迭代,所以最好在控制器中使用范围Javascript 角度-我的函数在无限循环中运行,javascript,html,angularjs,Javascript,Html,Angularjs,我正在尝试创建一个菜单,允许某些用户访问某些内容: HTML 因为您的方法在每个循环中都会被触发,这会导致无限迭代,所以最好在控制器中使用范围 由于您的方法在每个周期都会触发,这可能会导致无限迭代,因此最好在控制器内使用作用域。$http.get是异步的,因此必须使用立即返回true/false的函数。更不用说,您不能从异步请求返回任何内容。这将在每个摘要周期触发!!不要这样做!!只需创建一个在Controlleral中初始化的$scope属性。因此,不推荐使用.success(),而应使用.t
由于您的方法在每个周期都会触发,这可能会导致无限迭代,因此最好在控制器内使用作用域。
$http.get
是异步的,因此必须使用立即返回true/false的函数。更不用说,您不能从异步请求返回任何内容。这将在每个摘要周期触发!!不要这样做!!只需创建一个在Controlleral中初始化的$scope
属性。因此,不推荐使用.success()
,而应使用.then()
。$http.get
是异步的,必须使用立即返回true/false的函数。更不用说,您不能从异步请求返回任何内容。这将在每个摘要周期触发!!不要这样做!!只需创建一个$scope
属性,并在Controlleral中初始化。因此,不推荐使用.success()
,而应使用.then()
。
<ul class="dropdown-menu">
<li><a href="/local" >Local</a></li>
<li><a href="/fazenda" ng-class = "{botaodisabled:botoes('Fazenda')}">Fazenda</a></li>
<li><a href="/gleba">Gleba</a></li>
$scope.botoes = function(nome) {
console.log(nome);
$http.get('/botaopermissao/'+nome).success(function(data) {
console.log(data);
if(data == "Encontrado!"){
return true;
}else{
return false;
}
});
}
function(nome) {
console.log(nome);
$http.get('/botaopermissao/'+nome).success(function(data) {
console.log(data);
if(data == "Encontrado!"){
$scope.botoa= "what you want";
}
}
});
}