gpt4 book ai didi

javascript - 如何根据 Angularjs 中的某些条件在 Controller 中创建作用域变量

转载 作者:行者123 更新时间:2023-12-03 10:32:44 26 4
gpt4 key购买 nike

我在 Angularjs Controller 中的代码如下:

$scope.validElements = [                                    
{
"id": "One",
},
{
"id": "Two",
},
{
"id": "Three",
},
{
"id": "Four",
}
];

如何使 validElements 根据条件而有所不同( if(someService.someElement == "ABC") ) then

$scope.validElements = [                                    
{
"id": "One",
},
{
"id": "Three",
}
];

否则

$scope.validElements = [                                    
{
"id": "One",
},
{
"id": "Two",
},
{
"id": "Three",
},
{
"id": "Four",
}
];

如果可能,请提供建议或任何粗略的想法如何完成

最佳答案

您似乎想创建另一个作用域变量并将其设置为等于 someService,然后在 someSome 元素上放置一个监视。然后您可以在监视函数中处理条件。我这样做是为了观察服务变量

    $scope.validElements = [ // set default here               
{
"id": "One",
} // ...
];
$scope.someService = someService;
$scope.$watch('someService.someElement', function(newValue, oldValue) {
// or a switch statment
if(newValue == 'ABC'){
$scope.validElements = [
{
"id": "One",
},
{
"id": "Three",
}
];
}else{
// handle else condition
$scope.validElements = [
{
"id": "One",
},
{
"id": "Two",
},
{
"id": "Three",
},
{
"id": "Four",
}
];
}
});

希望这有帮助!祝你好运

关于javascript - 如何根据 Angularjs 中的某些条件在 Controller 中创建作用域变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29137178/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com