范围变量ng-bind-html未及时加载

时间:2015-09-03 00:00:48

标签: javascript html angularjs

我使用ng-bind-html呈现包含html代码的字符串。但是,变量是从firebase中提取的,需要一些时间才能加载。因此,当页面加载时它不会呈现,因为我怀疑变量没有及时加载。

代码很简单 -

<br ng-bind-html="invoice.delivery.adr_address">

如果我这样做,那么当变量加载时我得到一行html代码作为字符串:

<br>{{invoice.delivery.adr_address}}

非常感谢帮助!

3 个答案:

答案 0 :(得分:1)

可能有所帮助的两件事。你需要使用$ sce.trustAsHtml将它绑定到dom ...而br也是一个自动关闭的标签(之间没有任何内容),所以你需要将它切换为div或者适当的标签。

答案 1 :(得分:0)

如果您担心数据到达之前的页面呈现,则需要在呈现模板之前加载数据。请看这篇关于在角度路线上使用resolve属性的帖子(如果使用ngRoute)。将您的Firebase绑定到传入的财产。

http://odetocode.com/blogs/scott/archive/2014/05/20/using-resolve-in-angularjs-routes.aspx

答案 2 :(得分:0)

使用Angular Sanitize可以解决此问题。