当我们编写的模板,不仅仅在一个指令中使用,也需要在其他的指令中使用,我们希望AngularJS帮我们把它给缓存起来.就可以使用$templateCache
了。先看代码:
//注射器加载完所有模块时,此方法执行一次
myModule.run(function($templateCache){
$templateCache.put("hello.html","<div>Hello everyone!!!!!!</div>");
});
myModule.directive("hello", function($templateCache) {
return {
restrict: 'AECM',
template: $templateCache.get("hello.html"),
replace: true
}
}
run方法解释
当我们的注射器,加载完了所有的模块之后,run方法
将会被执行一次。
总结
- 使用
$templateCache.put
把模板缓存起来 - 其他指令使用
$templateCache.get
就可以获取到了。
通过这种方式,就可以把模板缓存起来,被多个指令使用它。nginclude
也可以实现此功能。