關(guān)于vue路由緩存清除在main.js中的設(shè)置
更新時間:2019年11月06日 08:41:36 作者:高級前端工程師Vue方向
今天小編就為大家分享一篇關(guān)于vue路由緩存清除在main.js中的設(shè)置,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
1.main.js
/* 頁面數(shù)據(jù)緩存 */
var _CACHE_OBJS = {};
function _init_cache(comp, key, cache) {
var obj = cache[key];
if (obj !== undefined) {
comp[key] = obj;
}
var deep = typeof comp[key] === 'object';
comp.$watch(key,
function (val) {
//console.log("page " + key + " updated");
cache[key] = val;
}, {
deep: deep
});
}
var _PAGE_CACHE = {
/*
* 初始化頁面緩存數(shù)據(jù)
* comp: 當(dāng)前頁面component 對象
* path: 當(dāng)前頁面vue router path
* data: 需要緩存的數(shù)據(jù)對象名稱,或名稱數(shù)組
*/
cache: function (comp, path, data) {
if (data == '' || data == undefined || data == null) {
data = restore(comp._data);
}
var cache = _CACHE_OBJS[path];
if (cache === undefined) {
cache = {};
_CACHE_OBJS[path] = cache;
}
if (typeof data == 'string') {
_init_cache(comp, data, cache);
} else {
var i;
for (i = 0; i < data.length; ++i) {
_init_cache(comp, data[i], cache);
}
}
console.log(_CACHE_OBJS, "頁面數(shù)據(jù)緩存");
},
/* 清除頁面緩存 */
clear: function (path) {
delete _CACHE_OBJS[path];
},
/* 清空所有緩存數(shù)據(jù) */
reset: function () {
//console.log("reset page cache");
_CACHE_OBJS = {};
},
/*根據(jù)path查看當(dāng)前頁面緩存是否存在*/
has_cache: function (path) {
return _CACHE_OBJS[path] !== undefined && !isEmptyObject(_CACHE_OBJS[path]);
}
};
Vue.prototype.$cache = _PAGE_CACHE;
/* eslint-disable no-new */
var restore = function (vueObject) {
var result = [];
for (var index in vueObject) {
result.push(index);
}
return result;
};
var isEmptyObject = function (obj) {
for (var key in obj) {
return false;
}
return true;
}
以上這篇關(guān)于vue路由緩存清除在main.js中的設(shè)置就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue element-ui el-cascader級聯(lián)選擇器數(shù)據(jù)回顯的兩種實現(xiàn)方法
這篇文章主要介紹了vue element-ui el-cascader級聯(lián)選擇器數(shù)據(jù)回顯的兩種實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。2023-07-07
Vue實現(xiàn)導(dǎo)航欄的顯示開關(guān)控制
今天小編就為大家分享一篇Vue實現(xiàn)導(dǎo)航欄的顯示開關(guān)控制,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11
使用Vue中 v-for循環(huán)列表控制按鈕隱藏顯示功能
這篇文章主要介紹了使用Vue中 v-for循環(huán)列表控制按鈕隱藏顯示功能,需要的朋友可以參考下2019-04-04

