angular.js - angularjs 如何禁止範本緩存
迷茫
迷茫 2017-05-15 17:10:23
0
2
673

angularjs載入不同的路由模板,但是它總是使用緩存,重新載入頁面都沒用。如何才能禁止路由機制使用快取?

之前有人提到解決方法是:

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

我試了一下結果報錯,404 template not found

迷茫
迷茫

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

全部回覆(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();
})
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板