angularjs - $compile 正在为 Angular 表达式评估字符串之前加载图像

标签 angularjs angularjs-scope

我正在构建一个服务来处理我的 Angular 应用程序中的模态窗口,因此需要一些手动工作来链接模板、范围和 Controller 。

我像这样使用 $compile 来构建模板并附加到范围,例如:

$compile('<h1>This is my window</h1><img src="{{ imageUrl }}">')($scope);

一切正常,但是......浏览器试图在 HTML 字符串被评估为 Angular 表达式之前加载任何东西,例如图像。例如,在这种情况下,浏览器会尝试逐字加载“http://myhost.com/ {{ imageUrl }}”,然后在拾取 Angular 表达式时立即加载正确的 URL。

这在 $compile()($scope) 被调用时立即发生,甚至没有将返回的模板附加/插入到 DOM。

基本上浏览器似乎在 Angular 替换 Angular 表达式之前解析 HTML - 浏览器将请求 HTML 中的任何类型的远程内容。怎么会这样?

最佳答案

使用ng-src而不是 src。这就是它的用途。

关于angularjs - $compile 正在为 Angular 表达式评估字符串之前加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21026315/

相关文章:

javascript - AngularJS 中与后端服务通信的最佳方法是什么

javascript - AngularJs - 在准备好之前访问 $scope 变量的代码

jquery - Angular JS 表单重新加载页面

AngularJs:如何检查文件输入字段的更改?

javascript - AngularJS 和 Socket.IO - 从服务(此处发出)到 Controller 的返回值未定义 || promise 、异步

javascript - Parse.User.signUp() 中的第一个参数是什么?

javascript - $scope 没有更新

angularjs - ng-include 与 ui-router 中的 $state.go() 不起作用

javascript - 出现错误未知提供者 : e on minified version of angularjs + es6 in webpack

angularjs - 将指令内的 ng-click 数据传递到 Controller 中的函数中