我今天遇到了这个问题,在我正在开发的应用程序中,指令中有一堆链接需要更新,并在我的链接函数中使用 $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);
关于javascript - Angular $compile 服务对空格敏感吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19284071/