Angularjs使用范围缓存已编译的DOM元素

时间:2015-01-14 09:19:42

标签: javascript angularjs dom caching

Angularjs缓存已编译的DOM元素,其范围为

上下文是我正在研究移动环境,所以我尝试将已编译的DOM元素缓存到内存中,如下所示:

cache[key] = $compile(myTemplate)(newScope); 

并更新其他元素的内容,如下所示:

$('myElement').html(cache[key]); 

第一次一切正常,然后我清除myElement的内容并使用缓存再次更新myElement的内容:

$('myElement').empty().html(cache[key]);

并且缓存的编译模板的范围消失(缓存[key]的范围)。

我不想使用:

 $compile(myTemplate)(scope, function(compiledTemplate) {
  cache[key] = compiledTemplate;
});

每次编译模板并应用于范围,所以如果有任何方法可以缓存已编译的Dom元素和范围,请帮帮我,谢谢。

1 个答案:

答案 0 :(得分:0)

我知道它有点迟了,但它可能对其他人有所帮助。

尝试https://github.com/rotorgames/angular-rg-cache-view

它似乎在保持范围的同时缓存视图。