当前位置: 首页 > news >正文

1688网站靠谱吗搜索大全搜索引擎

1688网站靠谱吗,搜索大全搜索引擎,公司网站想自己做,安国市住房和城乡建设局网站最近有客户反映我们系统按条件查询完列表进入详情页后再返回列表页时页面没有展示他查询的那条数据,而是进入页面一贯会展示按无条件查询的数据,希望我们能对列表做查询缓存,那咱们就用keep-alive来实现一下 AppMain.vue include 属性绑定一个…

最近有客户反映我们系统按条件查询完列表进入详情页后再返回列表页时页面没有展示他查询的那条数据,而是进入页面一贯会展示按无条件查询的数据,希望我们能对列表做查询缓存,那咱们就用keep-alive来实现一下

AppMain.vue

include 属性绑定一个数组,数组里是打开需要缓存的路由name

<template><section class="app-main"><transition name="fade-transform" mode="out-in"><keep-alive :include="cachedViews"><router-view :key="key" /></keep-alive></transition></section>
</template>
<script>
export default {name: 'AppMain',computed: {cachedViews() {return this.$store.state.tagsView.cachedViews},key() {return this.$route.path}}
}
</script>

store文件夹下的getters.js

const getters = {visitedViews: state => state.tagsView.visitedViews,cachedViews: state => state.tagsView.cachedViews,
}
export default getters

store文件夹下的modules文件夹中创建tagsView.js文件

const state = {visitedViews: [], //所有访问过的路由参数cachedViews: [] // 需要可缓存的所有已访问路由name
}const mutations = {ADD_VISITED_VIEW: (state, view) => {if (state.visitedViews.some(v => v.path === view.path)) returnstate.visitedViews.push(Object.assign({}, view, {title: view.meta.title || 'no-name'}))},ADD_CACHED_VIEW: (state, view) => {if (state.cachedViews.includes(view.name)) returnif (!view.meta.noCache) {state.cachedViews.push(view.name)}},DEL_VISITED_VIEW: (state, view) => {for (const [i, v] of state.visitedViews.entries()) {if (v.path === view.path) {state.visitedViews.splice(i, 1)break}}},DEL_CACHED_VIEW: (state, view) => {const index = state.cachedViews.indexOf(view.name)index > -1 && state.cachedViews.splice(index, 1)},DEL_OTHERS_VISITED_VIEWS: (state, view) => {state.visitedViews = state.visitedViews.filter(v => {return v.meta.affix || v.path === view.path})},DEL_OTHERS_CACHED_VIEWS: (state, view) => {const index = state.cachedViews.indexOf(view.name)if (index > -1) {state.cachedViews = state.cachedViews.slice(index, index + 1)} else {state.cachedViews = []}},DEL_ALL_VISITED_VIEWS: state => {// keep affix tagsconst affixTags = state.visitedViews.filter(tag => tag.meta.affix)state.visitedViews = affixTags},DEL_ALL_CACHED_VIEWS: state => {state.cachedViews = []},UPDATE_VISITED_VIEW: (state, view) => {for (let v of state.visitedViews) {if (v.path === view.path) {v = Object.assign(v, view)break}}}
}const actions = {addView({ dispatch }, view) {dispatch('addVisitedView', view)dispatch('addCachedView', view)},addVisitedView({ commit }, view) {commit('ADD_VISITED_VIEW', view)},addCachedView({ commit }, view) {commit('ADD_CACHED_VIEW', view)},delView({ dispatch, state }, view) {return new Promise(resolve => {dispatch('delVisitedView', view)dispatch('delCachedView', view)resolve({visitedViews: [...state.visitedViews],cachedViews: [...state.cachedViews]})})},delVisitedView({ commit, state }, view) {return new Promise(resolve => {commit('DEL_VISITED_VIEW', view)resolve([...state.visitedViews])})},delCachedView({ commit, state }, view) {return new Promise(resolve => {commit('DEL_CACHED_VIEW', view)resolve([...state.cachedViews])})},delOthersViews({ dispatch, state }, view) {return new Promise(resolve => {dispatch('delOthersVisitedViews', view)dispatch('delOthersCachedViews', view)resolve({visitedViews: [...state.visitedViews],cachedViews: [...state.cachedViews]})})},delOthersVisitedViews({ commit, state }, view) {return new Promise(resolve => {commit('DEL_OTHERS_VISITED_VIEWS', view)resolve([...state.visitedViews])})},delOthersCachedViews({ commit, state }, view) {return new Promise(resolve => {commit('DEL_OTHERS_CACHED_VIEWS', view)resolve([...state.cachedViews])})},delAllViews({ dispatch, state }, view) {return new Promise(resolve => {dispatch('delAllVisitedViews', view)dispatch('delAllCachedViews', view)resolve({visitedViews: [...state.visitedViews],cachedViews: [...state.cachedViews]})})},delAllVisitedViews({ commit, state }) {return new Promise(resolve => {commit('DEL_ALL_VISITED_VIEWS')resolve([...state.visitedViews])})},delAllCachedViews({ commit, state }) {return new Promise(resolve => {commit('DEL_ALL_CACHED_VIEWS')resolve([...state.cachedViews])})},updateVisitedView({ commit }, view) {commit('UPDATE_VISITED_VIEW', view)}
}export default {namespaced: true,state,mutations,actions
}

最后

可以找个组件试一下,我这边已经实现了,效果可以自己去印证一下

export default {// 组件里一定要加上这个name,如果不需要缓存那就可以不要这个// 这个name一定要写对,要和定义的路由name一样// 如果不知道是什么可以在ADD_CACHED_VIEW打印一下view.namename: "Menu",
}
http://www.ds6.com.cn/news/118483.html

相关文章:

  • 装修公司网站asp源码网站制作公司网站
  • 网站的标题怎么做吸引人软文500字范文
  • 自己电脑做网站服务器违法吗怎样优化关键词到首页
  • 园区门户网站建设四川成都最新消息
  • 厦门网站建设哪家专业网络推广和网站推广平台
  • 网站建设管理后台导航栏原创软文
  • 网站分享链接怎么做的山东seo费用多少
  • 网站备案要先怎么做上海优化网站公司哪家好
  • wordpress 视频显示图片免费seo网站自动推广软件
  • wordpress关闭自动保存优化网络
  • 天津武清做网站tjniu文章代写
  • 沈阳网站公司排名广州专业网络推广公司
  • app的推广方式有哪些百度快照优化的优势是什么
  • 大连建站程序蓝牙耳机网络营销推广方案
  • wordpress显示作者就业seo好还是sem
  • 小网站asp好还是php好百度电脑版网页版
  • 建网站什么样的域名最好新媒体营销
  • 做赌博黑网站赚钱么么免费二级域名生成网站
  • 网站浏览图片怎么做的合肥seo排名优化
  • 南京银城建设 网站网站外包一般多少钱啊
  • 长乐网站建设网络优化公司
  • wordpress 主题 h5大型seo公司
  • 怎样向搜索引擎提交网站成都seo排名
  • wordpress+仿站步骤国外网站如何搭建网页
  • 礼叮当 一家做创意礼品定制的网站手机百度官网
  • 昆山网站建设ikelv官方网站百度一下
  • 几个网站一个空间 怎么做邮箱推广关键词排名查询
  • 如何做监控网站百度广告怎么收费标准
  • 网络产品营销策略范文河南网站优化排名
  • 网站开发入门书籍品牌营销策划方案怎么做才好