关于vue路由缓存清除在main.js中的设置
1.main.js

创新互联建站是一家集网站建设,河源企业网站建设,河源品牌网站建设,网站定制,河源网站建设报价,网络营销,网络优化,河源网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
/* 页面数据缓存 */
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 = {
/*
* 初始化页面缓存数据
* comp: 当前页面component 对象
* path: 当前页面vue router path
* data: 需要缓存的数据对象名称,或名称数组
*/
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, "页面数据缓存");
},
/* 清除页面缓存 */
clear: function (path) {
delete _CACHE_OBJS[path];
},
/* 清空所有缓存数据 */
reset: function () {
//console.log("reset page cache");
_CACHE_OBJS = {};
},
/*根据path查看当前页面缓存是否存在*/
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;
}
以上这篇关于vue路由缓存清除在main.js中的设置就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持创新互联。
网页名称:关于vue路由缓存清除在main.js中的设置
文章转载:http://www.jxjierui.cn/article/pehpjg.html


咨询
建站咨询
