对于Angular 1.5组件,有没有办法重新加载模板更改并重新编译它?

时间:2017-03-14 06:10:30

标签: javascript angularjs

这有点复杂所以请耐心等待。这是Plunkr来说明我的要求。

假设我有一个使用模板<tpl>的组件tpl-1.html。有问题的组件已经完全加载到页面上。此外,<tpl>包含一个绑定到其他地方模型的表达式(在Plunkr中,这将是输入框)。

假设稍后我在页面仍处于打开状态时在tpl-1.html内添加了一些内容。如果不刷新页面,我只想重新加载<tpl>,以便将调整后的模板中的新内容呈现给页面。此外,模板中的任何绑定都不应丢失(因此在重新加载期间,tpl-1.html中的表达式仍应绑定到输入框)。

我的问题:这可能吗?如果是这样,我将如何做到这一点?

我尝试了一种显而易见的方法,即对tpl-1.html进行AJAX调用,替换<tpl>中的HTML,然后继续$compile,但这样做不起作用绑定丢失了。我还尝试直接替换<tpl>本身,但它仍然使用旧模板。

这似乎是路由器能够做到的事情,但对于像这样的事情来说似乎有点矫枉过正。这是否可以在没有它的情况下实现(或者甚至可以实现)?

0 个答案:

没有答案