angular.js - angularjs 如何禁止模板缓存
迷茫
迷茫 2017-05-15 17:10:23
0
2
661

angularjs加载不同的路由模板,但是它总是使用缓存,重新加载页面都没用。如何才能禁止路由机制使用缓存?

之前有人提到解决办法是:

when('/data', {
    templateUrl: 'partial/customer_ask.html?t=' + Math.floor(Date.now() / 1000),
    controller: 'dataController'
})

我试了一下结果报错,404 template not found

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

Antworte allen(2)
曾经蜡笔没有小新

404应该没问题,但是每次t的结果都是一样的么?
templateUrl对应的是固定的一个模版页面。你这样写估计angular一直都找不到
如果想要在url里边传参数,需要在我when后边配置

when('/data/:t', {
    templateUrl: 'partial/customer_ask.html,
    controller: 'dataController'
})

在controller中用

location.path('/data/'+Math.floor(Date.now() / 1000)) //大概这么写忘记了

或者页面有a标签

//controller
$scope.randomTime = Math.floor(Date.now() / 1000);
//html
<a href="#/data/{{randomTime}}">走你</a>

可以参考下这个例子
https://xdsnet.gitbooks.io/an...

世界只因有你

要不试试用ui-router取代router吧

$stateProvider.state('stateName', {
        cache: false,
        .....
})

or

$stateProvider.state('stateName', {
        url: return '/foo/bar/' + $.now();
})
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage