angularjs - $templateCache 是如何工作的?

标签 angularjs browser-cache angular-cache

我对 $templateCache 资源有点困惑;

  • html/template 会存储在服务器端吗?

  • 或者将存储在浏览器内存中?如果是这样,内存限制是多少?

最佳答案

$templateCache 是如何工作的

当你有 templateUrl 时,在对该模板发出网络请求之前,Angular 将首先查看 $templateCache 以查看它是否存在。

第一次请求 templateUrl 时,会发出网络请求,但结果存储在 $templateCache 中,因此下次访问该 url 时,它会被检索来自 $templateCache

在开发中,第一个请求不被缓存这一事实很好,因为请求是针对本地文件的,而不是针对外部文件的网络请求(具有高延迟和耗时)。

在生产中,有两种方法可以将文件最初放置在 $templateCache 中。

  1. 使用ngTemplate .
  2. run block 中手动添加到 $templateCacheTutorial .

内存题

$templateCache 肯定不会从服务器访问模板;它存储在客户端上。至于在客户端哪里,我设置了一个SSCCE并且它似乎将其存储为 JavaScript 字符串。它似乎没有将其存储在 localStoragesessionStorage 或作为 cookie。

关于angularjs - $templateCache 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34192111/

相关文章:

caching - 如何使用 must-revalidate 缓存 HTML 页面?

AngularJs http 获取缓存不起作用

angularjs - Angular - polymer 相互作用

html - 缩小 css - 删除标记文件的内联样式中的 angularjs 表达式

javascript - AngularJS - 将警报弹出窗口附加到空输入

regex - 使用 FilesMatch 缓存 .htaccess

angularjs - 仅在 token 定义后才使 Angular $resource 请求起作用

php - 编码 HTML 时,浏览器并不总能检测到更改

javascript - Angular JS - 使用服务保存\共享数据