我正在使用angularJS编写一个小型购物应用程序。我希望能够阻止某些$states
的模板进行缓存,例如订单审核状态。我的问题是用户可能会更改订单,然后使用浏览器下一步按钮转到订单审核页面。该页面加载了一些带有服务器准备的购物车数据的模板。
我可以使用其他状态的模板(如产品描述状态)来缓存。因此,我不想使用$templateCache.removeAll();
。
在https://gist.github.com/claudemamo/9092047#file-app-2-js我发现了这个:
app.run(function($rootScope, $templateCache) {
$rootScope.$on('$routeChangeStart', function(event, next, current) {
if (typeof(current) !== 'undefined'){
$templateCache.remove(current.templateUrl);
}
});
});
在每次状态发生变化时,我可能只会做类似的事情,因为我不想缓存所有状态。
我是否应该检查我正在加载的模板,如果我不希望将其缓存,请将其从缓存中删除?