我的Angularjs應用在Chrome中工作正常,但在IE9中沒有(尚未測試> IE9)。Angularjs - IE9緩存行爲
我從數據庫中提取一些數據並在列表中顯示結果。然後,我可以刪除數據並每次將新的數據保存添加到數據庫。 IE9顯示了我開始使用的原始數據,即使當我查看數據庫時,數據已按我的預期發生了變化。
我認爲這是緩存行爲在IE9中,但我不知道我應該如何去解決這個問題。
我正在使用MEAN堆棧。任何建議/意見都會很棒。
我的Angularjs應用在Chrome中工作正常,但在IE9中沒有(尚未測試> IE9)。Angularjs - IE9緩存行爲
我從數據庫中提取一些數據並在列表中顯示結果。然後,我可以刪除數據並每次將新的數據保存添加到數據庫。 IE9顯示了我開始使用的原始數據,即使當我查看數據庫時,數據已按我的預期發生了變化。
我認爲這是緩存行爲在IE9中,但我不知道我應該如何去解決這個問題。
我正在使用MEAN堆棧。任何建議/意見都會很棒。
答案來自:Better Way to Prevent IE Cache in AngularJS?
在AngularJS該段應防止響應緩存:
myModule.config(['$httpProvider', function($httpProvider) {
//initialize get if not there
if (!$httpProvider.defaults.headers.get) {
$httpProvider.defaults.headers.get = {};
}
//disable IE ajax request caching
$httpProvider.defaults.headers.get['If-Modified-Since'] = '0';
}]);
或者你可以在你的後端,響應不應該被緩存指定,但具體執行本取決於你的後端實現。
這似乎工作 - 謝謝! – tommyd456
如果您可以提供一個最小樣本來證明其他人也可以嘗試的問題,可能會有所幫助。另外,僅僅因爲你有MEAN棧並不意味着你引用了所有這些標籤。這裏的問題似乎與「角度」部分有關,所以請保持這一點。 –
緩存行爲可能會受到後端的影響,所以我認爲相關! – tommyd456