我在 AngularJS 中有一个基本应用程序。该模型包含许多项目和这些项目的相关标签。我想要实现的是过滤显示的项目的能力,以便只显示那些具有一个或多个活动标签的项目,但是我在弄清楚如何从视图中操作模型方面运气不佳。
JS 可在http://jsfiddle.net/Qxbka/2获得。这包含到目前为止我设法达到的状态,但我有两个问题。首先,该指令尝试调用toggleTag()
控制器中的方法:
template: "<button class='btn' ng-repeat='datum in data' ng-click='toggleTag(datum.id)'>{{datum.name}}</button>"
但没有调用该方法。其次,我不确定如何更改输出部分ng-repeat
,使其仅显示具有一个或多个活动标签的项目。
任何关于我做错了什么以及如何使它工作的指针都将不胜感激。
更新 我更新了指令中的方法直接传递数据项,即
template: "<button class='btn' ng-repeat='datum in data' ng-click='toggle(data, datum.id)'>{{datum.name}}</button>"
并且还在toggle()
指令中创建了一个方法。通过这样做,我可以进行操作data
,它会反映在状态 HTML 中,但是如果这是否是正确的方法,我将不胜感激(我感觉不太正确)。
仍然坚持如何在更新标签值时重新评估输出。