gpt4 book ai didi

javascript - Angular.js - 在范围内使用函数的优雅方式

转载 作者:行者123 更新时间:2023-11-28 08:00:28 25 4
gpt4 key购买 nike

我计划在我的应用程序中运行各种计算来显示不同的消息/类,我不确定在 Angular 中执行此操作的最优雅/最佳实践方法是什么。

下面是我想要实现的目标的一个简单示例,尽管我的计划是创建更复杂的表达式,这些表达式对我来说没有意义保留在标记中。

<li ng-repeat="goal in goals"> 
<strong ng-show="((goal.count / goal.goalNumber) * 100) == 0"> Get to work</strong>
<strong ng-show="((goal.count / goal.goalNumber) * 100) == 50"> Half way there!</strong>
<strong ng-show="((goal.count / goal.goalNumber) * 100) == 100"> Success!!</strong>
</li>

有人可以推荐一种更加模块化/可重用的方法来做到这一点吗?我想一种方法是创建一个可以在整个模板中使用的函数?但是如何在该函数中获取每个“目标”迭代的 goal.count 和 goal.goalNumber ?这是我从 Controller 调用的东西,还是指令是存储它的更好地方?

非常感谢。

最佳答案

一点改进...

HTML

<li ng-repeat="goal in goals">  
<strong ng-show="geq(goal, 0)"> Get to work</strong>
<strong ng-show="geq(goal, 50)"> Half way there!</strong>
<strong ng-show="geq(goal, 100)"> Success!!</strong>
</li>

JS

$scope.geq = function(g, n){
return ((100 * g.count / g.goalNumber ) === n);
};

关于javascript - Angular.js - 在范围内使用函数的优雅方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25474830/

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