angularjs - 为什么在 Angular 中使用 ng-src 时必须使用表达式?

标签 angularjs

ng-src='{{item.img[0]}}'

当...

其他指令只接受像 ng-show='item.val' 这样的字符串

我不确定为什么在某些情况下使用该表达式以及为什么在其他情况下使用该字符串?

最佳答案

这只是它的实现方式。

选择使用插值表达式的原因是它允许您执行以下操作:

ng-src="http://my.generic.url/some/resource/{{IDdefinedInScope}}"
<小时/>

如果它不使用插值,您将必须执行以下操作:

ng-src="'http://my.generic.url/some/resource/' + IDdefinedInScope"

或者:

ng-src="someResourceUrl(IDdefinedInScope)"

$scope.someResourceUrl = function (id) {
    return 'http://my.generic.url/some/resource/' + id;
};

(...更加冗长、笨拙,且声明性较少。)

<小时/>

<子> 当然,使这成为可能的是输出需要一个字符串(而不是一个对象)。

关于angularjs - 为什么在 Angular 中使用 ng-src 时必须使用表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24348577/

相关文章:

angularjs - 监视 AngularJS 中的过滤事件 - 延迟加载图像

javascript - 使用 ngInfiniteScroll 从远程源输出 JSON

javascript - 如何在 angularJs 中索引表

javascript - 收到推送通知时如何更改范围变量

javascript - 如何在 AngularJS $rootScope 事件监听器中应用状态转换?

javascript - 如何仅当用户在页面上停留超过一秒时检索数据

html - 在 Angular html 代码中格式化大量 html 属性的最佳方法是什么?

ios - 如何在 Angular 应用程序中使用 UI 字体图标

javascript - 添加文本框的数字会给出错误的结果

javascript - 更改 AngularJs 或 Polymer 中的绑定(bind)语法