我想使用 Angular 将模型数据表示为不同的图像,但在找到“正确”的方法时遇到了一些麻烦。关于表达式的 Angular API 文档说条件表达式是不允许的......
简化了很多,模型数据是通过 AJAX 获取的,并向您显示路由器上每个接口的状态。就像是:
$scope.interfaces = ["UP", "DOWN", "UP", "UP", "UP", "UP", "DOWN"]
因此,在 Angular 中,我们可以显示每个界面的状态,例如:
<ul>
<li ng-repeat=interface in interfaces>{{interface}}
</ul>
但是 - 我想展示一个合适的图像,而不是模型中的值。遵循这个一般想法的东西。
<ul>
<li ng-repeat=interface in interfaces>
{{if interface=="UP"}}
<img src='green-checkmark.png'>
{{else}}
<img src='big-black-X.png'>
{{/if}}
</ul>
(我认为 Ember 支持这种类型的构造)
当然,我可以修改控制器以根据实际模型数据返回图像 URL,但这似乎违反了模型和视图的分离,不是吗?
这个 SO Posting建议使用指令来更改 bg-img 源。但随后我们又回到将 URL 放入 JS 而不是模板中......
所有建议表示赞赏。谢谢。
请原谅任何错别字