Merge branch 'hotfix/page演示' into develop
Former-commit-id: d6ed9a217cc4651cc5a1cb4d91d4d8ec3fc4cc15 [formerly d6ed9a217cc4651cc5a1cb4d91d4d8ec3fc4cc15 [formerly d6ed9a217cc4651cc5a1cb4d91d4d8ec3fc4cc15 [formerly d6ed9a217cc4651cc5a1cb4d91d4d8ec3fc4cc15 [formerly 2999ea6f1b9a4e40b09993137d3e32811a649239 [formerly 817dd948b7ce0343de579ec448cbd2fbb412ddbd]]]]] Former-commit-id: ad1010fa03b653476077f4fc0accf1c6ef4e17c5 Former-commit-id: 74238dbc7f1bf81f23d6f40634b7a29c7d322a11 Former-commit-id: b67a8bc54604f6f68264743cd739a727113ae5c0 [formerly 76b8e9566870744300f6fd3d97ee64ab337c90fe] Former-commit-id: 24102e906b3341940dc29427b63d029eac9231de Former-commit-id: d1d1848805d730e7ea0b4a96646d58220c5a35de Former-commit-id: d163aa06a47bb00a14467d4392329bebbd6740ce Former-commit-id: 89e2121b957c709b55f767fa29977c72dd1f0eda Former-commit-id: a8c0ce437c38cd06c40500175e925740448409b1
This commit is contained in:
@@ -40,10 +40,7 @@ export default {
|
||||
// 清空缓存设置
|
||||
this.pageKeepAliveClean()
|
||||
// 刷新此页面
|
||||
const { path, query } = this.$route
|
||||
this.$router.replace({
|
||||
path: '/redirect/' + JSON.stringify({ path, query })
|
||||
})
|
||||
this.$router.replace('/refresh')
|
||||
}
|
||||
},
|
||||
immediate: true
|
||||
|
||||
@@ -6,3 +6,11 @@
|
||||
<el-button type="primary" @click="$router.push({ name: 'demo-playground-page-argu-send' })">返回发送数据的页面</el-button>
|
||||
</d2-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
mounted () {
|
||||
console.log('this.$route', this.$route)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -1,16 +1,42 @@
|
||||
<template>
|
||||
<d2-container type="card">
|
||||
<!-- 证明有缓存 -->
|
||||
<p class="d2-mt-0">在下面的输入框输入任意字符后,切换到其它页面,再回到此页时输入框文字保留,证明被缓存</p>
|
||||
<el-input v-model="value" placeholder="input here"></el-input>
|
||||
<!-- 页签操作 -->
|
||||
<p>页签操作</p>
|
||||
<el-button @click="closeCurrent" type="danger">
|
||||
<d2-icon name="times"/>
|
||||
关闭当前页
|
||||
</el-button>
|
||||
<p>刷新</p>
|
||||
<el-button-group>
|
||||
<el-button @click="cleanCacheAndRefreshCurrent">
|
||||
<d2-icon name="refresh"/>
|
||||
清空当前页缓存并刷新
|
||||
</el-button>
|
||||
<el-button @click="cleanCacheAndRefreshAll">
|
||||
<d2-icon name="refresh"/>
|
||||
清空所有缓存并刷新
|
||||
</el-button>
|
||||
</el-button-group>
|
||||
</d2-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { mapActions } from 'vuex'
|
||||
import { mapMutations, mapActions } from 'vuex'
|
||||
export default {
|
||||
name: 'demo-playground-store-page',
|
||||
data () {
|
||||
return {
|
||||
value: ''
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
...mapMutations('d2admin/page', [
|
||||
'keepAliveRemove',
|
||||
'keepAliveClean'
|
||||
]),
|
||||
...mapActions('d2admin/page', [
|
||||
'close'
|
||||
]),
|
||||
@@ -20,6 +46,26 @@ export default {
|
||||
tagName: this.$route.name,
|
||||
vm: this
|
||||
})
|
||||
},
|
||||
// 刷新当前页面
|
||||
refreshCurrent () {
|
||||
// const { path, query } = this.$route
|
||||
// this.$router.replace({
|
||||
// path: '/redirect/' + JSON.stringify({ path, query })
|
||||
// })
|
||||
this.$router.replace({
|
||||
path: '/refresh'
|
||||
})
|
||||
},
|
||||
// 清空当前页缓存并刷新此页面
|
||||
cleanCacheAndRefreshCurrent () {
|
||||
this.keepAliveRemove(this.$route.name)
|
||||
this.$nextTick(this.refreshCurrent)
|
||||
},
|
||||
// 清空所有的缓存并刷新此页面
|
||||
cleanCacheAndRefreshAll () {
|
||||
this.keepAliveClean()
|
||||
this.$nextTick(this.refreshCurrent)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ export default {
|
||||
component: layoutHeaderAside,
|
||||
children: (pre => [
|
||||
{ path: 'index', name: `${pre}index`, component: () => import('@/pages/demo/playground/index'), meta: { ...meta, title: '试验台首页' } },
|
||||
{ path: 'store/page', name: `${pre}store-page`, component: () => import('@/pages/demo/playground/store/page'), meta: { ...meta, title: '多标签页控制' } },
|
||||
{ path: 'store/page', name: `${pre}store-page`, component: () => import('@/pages/demo/playground/store/page'), meta: { ...meta, cache: true, title: '多标签页控制' } },
|
||||
{ path: 'store/menu', name: `${pre}store-menu`, component: () => import('@/pages/demo/playground/store/menu'), meta: { ...meta, title: '菜单控制' } },
|
||||
{ path: 'store/size', name: `${pre}store-size`, component: () => import('@/pages/demo/playground/store/size'), meta: { ...meta, title: '全局尺寸' } },
|
||||
{ path: 'store/ua', name: `${pre}store-ua`, component: () => import('@/pages/demo/playground/store/ua'), meta: { ...meta, title: '浏览器信息' } },
|
||||
|
||||
@@ -20,11 +20,36 @@ const frameIn = [
|
||||
redirect: { name: 'index' },
|
||||
component: layoutHeaderAside,
|
||||
children: [
|
||||
// 首页 必须 name:index
|
||||
{
|
||||
path: 'index',
|
||||
name: 'index',
|
||||
meta,
|
||||
component: () => import('@/pages/index')
|
||||
},
|
||||
// 刷新页面 必须保留
|
||||
{
|
||||
path: 'refresh',
|
||||
name: 'refresh',
|
||||
hidden: true,
|
||||
component: {
|
||||
beforeRouteEnter (to, from, next) {
|
||||
next(vm => vm.$router.replace(from.fullPath))
|
||||
},
|
||||
render: h => h()
|
||||
}
|
||||
},
|
||||
// 页面重定向 必须保留
|
||||
{
|
||||
path: 'redirect/:route*',
|
||||
name: 'redirect',
|
||||
hidden: true,
|
||||
component: {
|
||||
beforeRouteEnter (to, from, next) {
|
||||
next(vm => vm.$router.replace(JSON.parse(from.params.route)))
|
||||
},
|
||||
render: h => h()
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -42,19 +67,6 @@ const frameIn = [
|
||||
* 在主框架之外显示
|
||||
*/
|
||||
const frameOut = [
|
||||
// 页面重定向使用 必须保留
|
||||
{
|
||||
path: '/redirect/:path*',
|
||||
component: {
|
||||
beforeCreate () {
|
||||
const path = this.$route.params.path
|
||||
this.$router.replace(JSON.parse(path))
|
||||
},
|
||||
render: function (h) {
|
||||
return h()
|
||||
}
|
||||
}
|
||||
},
|
||||
// 登录
|
||||
{
|
||||
path: '/login',
|
||||
|
||||
@@ -1 +1 @@
|
||||
963a1923bc8b0876a15c930bd0f9cc2105cba4a7
|
||||
b640559cb03d106f8ed74403b61a7af0561e5015
|
||||
Reference in New Issue
Block a user