应无所住,而生其心
排名
1
文章
860
粉丝
112
评论
163
net core webapi post传递参数
庸人 : 确实坑哈,我也是下班好了好几次,发现后台传递对象是可以的,但...
百度编辑器自定义模板
庸人 : 我建议换个编辑器,因为现在百度富文本已经停止维护了,用tinymec...
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

vue element 页面切换如何无刷新

1662人阅读 2023/12/21 15:39 总访问:5182793 评论:0 收藏:0 手机
分类: 前端

使用keep-alive就行了

如果所有页面都保持页面缓存就直接在app.vue中设置中加上keep-alive就行了

在app.vue中设置

  1. <div id="app">
  2. <!-- 所有页面都保持页面缓存 -->
  3. <keep-alive>
  4. <router-view></router-view>
  5. </keep-alive>
  6. </div>

如果需要根据配置来,可以先在路由配置上设置是否缓存在根据判断来

先在路由配置上设置是否缓存,isKeepAlive用来判断是否缓存

  1. {
  2. path: '/task_manage/index',
  3. name: 'task_manage',
  4. component: () => import('/@/views/task_manage/index.vue'),
  5. meta: {
  6. title: '任务管理',
  7. isLink: '',
  8. isHide: false,
  9. // isKeepAlive用来判断是否缓存
  10. isKeepAlive: true,
  11. isAffix: false,
  12. isIframe: false,
  13. roles: ['admin', 'common'],
  14. icon: 'iconfont icon-shouye',
  15. },
  16. },

然后在app.vue中设置是否使用keep-alive就行了

  1. <keep-alive>
  2. <router-view v-if="$route.meta.isKeepAlive"></router-view>
  3. </keep-alive>
  4. <router-view v-if="!$route.meta.isKeepAlive"></router-view>

还可以使用include与exclude等属性设置是否需要缓存

include 值为字符串或者正则表达式,匹配的组件会被缓存。
exclude 值为字符串或正则表达式,匹配的组件不会被缓存。

使用keep-alive与不使用keep-alive生命周期函数介绍

不使用keep-alive
beforeRouteEnter —> created —> mounted —> destroyed;

使用keep-alive
beforeRouteEnter —> created —> mounted —> activated —> deactivated;
再次进入缓存的页面,只会触发beforeRouteEnter —>activated —> deactivated ,created和mounted不会再执行;

注意缓存中起作用需要加上名称name哟

而且这个需要和路由配置上的一致哦,乱写是不行的


欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价

饰心

2020/7/10 9:46:00

哇  好神奇

剑轩:@饰心嘿嘿嘿,那个全局变量怎么优化呢。就是在data里边定义不用全局变量

2020/7/11 12:25:07 回复

vue elementUI常用表单验证

&lt;script&gt; exportdefault{ name:&quot;form&quot;, data(){ //ip地址校验 varIPValidator=(rule,value,callbac...

vue elementui隐藏表格列。vue element-ui表格添加自增序号列

vue elementui隐藏表格列v-if就搞定了,如果不是动态的显示与隐藏直接设置成false就行 &lt;el-table-column label=&quot;...

vue elementui,vue3 element plus 文件上传的时候设置其他参数。后台.net接收传递的额外参数。图片上传

比如上传文件的时候额外传递两个select选择的值 前台前面上传文件的时候要提供默认参数很简单,el-upload绑定一个data即可...

vue element 三种信息提示框。错误提示,警告提示,消息提示

代码如下&lt;template&gt; &lt;el-button :plain=&quot;true&quot; @click=&quot;open2&quot;&gt;成功&lt;/el-button&gt...

vue elementui 图片预览。el-image-viewer图片查看器。修改图片预览的自带样式。点击哪一个就查看哪一个图片

先引入图片预览的组件 import ElImageViewer from &#39;element-ui/packages/image/src/image-viewer&#39; export defa...

vue-element-admin左边树形,右边格子的布局。vue element ui模板。树形tree 动态自适应屏幕高度

[TOC]效果如下: 代码如下:&lt;template&gt; &lt;div class=&quot;app-container student-archives&quot;&gt; &l...

vue elementui 常用表格,条件查询,类型解析,弹窗显示详情,图片显示,图片预览

[TOC]第一版 页面&lt;template&gt; &lt;div class=&quot;app-container&quot;&gt; &lt;el-card&gt; &lt;!-...

vue elementui 基础表格布局,基础表格+条件+搜索框布局类型处理,父子组件方法调用

[TOC]基础表格+条件+搜索框布局效果如下:代码如下: &lt;template&gt; &lt;div class=&quot;app-container&quot;&gt...

vue elementui 弹窗el-dialog,自定义弹窗样式,单选按钮el-radio联动

效果如下: 代码如下: &lt;!-- 处理问题反馈使用的弹窗 --&gt; &lt;template&gt; &lt;div&gt; &lt;!-- 弹窗sta...

vue elementui分页条使用与.net后台sqlsugar等分页方法使用。常用分页模板

分页条&lt;div style=&quot;margin-top: 20px;margin-bottom: 20px;text-align: center;&quot;&gt; &lt;el-pagination ...

vue element ui Collapse 折叠面板默认展开全部

首先去掉accordion属性,不然一次只能选择一个 value绑定一个,然后在使用name指定一个值 这里和上面name指定的值一致就...

vue element ui 日期,时间选择器的值传回到后台

直接把时间传回后台去是不行的,element ui 里边的日期组件获取的值默认是返回Date对象的,所以需要格式化一下。官方文档中...

vue elementui table去掉滚动条

当table内容列过多时,可通过height属性设置table高度以固定table高度、固定表头,使table内容可以滚动。现在需求是右侧滚...

css 实现消息气泡效果。 vue element admin右上角添加一个信息提醒的菜单

如图,这种聊天气泡效果 这个其实挺简单,没什么好说的,只是有一个点就是当气泡里边的数字,不断变大的时候,会影响气泡...

vue element admin 使用svg图标

vue-element-admin基础模板中,已经封装好了使用svg图标的组件,所在路径为:src/icons/svg(有些模板是在src/svg下面,看...

vue element ui select,下拉列表。数据绑定,基本使用

代码如下: &lt;el-select v-model=&quot;chapterID&quot; style=&quot;width:266px&quot;&gt; &lt;el-option v-f...