角度$compile服务对空白敏感

Angular $compile service sensitive to white space?

本文关键字:空白 服务 compile 角度      更新时间:2023-09-26

我今天遇到了这个问题,在我正在处理的应用程序中,我的指令中有一堆链接需要更新,在我的链接功能中使用$compile服务被证明很容易解决。(这不是最好的解决方案,但那是另一天。

无论如何,我的链接都搞砸了,但是从 {{var| filter}} 语句中删除了一个空格后,一切都得到了修复!我无法弄清楚这一点,但它似乎特定于元素属性(鉴于我的测试编译其他 HTML 元素(。

下面是一个演示该问题的工作示例:http://jsbin.com/IRogUxA/10/edit。(请原谅这个不稳定/人为的指令定义——这是今天许多实验的演变!

这是一个错误吗?还是表明一种容易出错的解决问题的方法?双?知道发生了什么吗?

谢谢!

问题出在您编译的 html 中。你有这个:

var temp1 = $compile('<a href={{isolateVar|toDate:false}}>A LINK THAT WORKS</a>')(scope);
var temp2 = $compile('<a href={{isolateVar| toDate:false}}>A LINK THAT DOES NOT</a>')(scope);

href没有引号,因此使用空格时,href 属性的值将为 {{isolateVar|

只需在href中添加引号,以便它获得您想要的全部价值

var temp1 = $compile('<a href="{{isolateVar|toDate:false}}">A LINK THAT WORKS</a>')(scope);
var temp2 = $compile('<a href="{{isolateVar| toDate:false}}">A LINK THAT DOES NOT</a>')(scope);