vue2-client 1.10.32-alpha → 1.10.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,74 +1,18 @@
1
1
  <template>
2
2
  <page-toggle-transition :disabled="animate.disabled" :animate="animate.name" :direction="animate.direction">
3
- <a-keep-alive :exclude-keys="excludeKeys" v-if="cachePage" v-model="clearCaches">
4
- <router-view v-if="!refreshing" :key="$route.fullPath" />
5
- </a-keep-alive>
6
- <router-view v-else-if="!refreshing" />
3
+ <router-view />
7
4
  </page-toggle-transition>
8
5
  </template>
9
6
 
10
7
  <script>
11
8
  import PageToggleTransition from '../components/transition/PageToggleTransition'
12
9
  import { mapState } from 'vuex'
13
- import AKeepAlive from '@vue2-client/components/cache/AKeepAlive'
14
10
 
15
11
  export default {
16
12
  name: 'BlankView',
17
- components: { PageToggleTransition, AKeepAlive },
18
- data () {
19
- return {
20
- clearCaches: [],
21
- excludeKeys: [],
22
- refreshing: false
23
- }
24
- },
13
+ components: { PageToggleTransition },
25
14
  computed: {
26
- ...mapState('setting', ['cachePage', 'animate'])
27
- },
28
- created () {
29
- this.loadCacheConfig(this.$router?.options?.routes)
30
- },
31
- mounted () {
32
- if (window.__MICRO_APP_ENVIRONMENT__) {
33
- window.microApp.addDataListener((data) => {
34
- if (data.type === 'refresh') {
35
- this.refresh()
36
- } else if (data.type === 'clearCache') {
37
- this.clearCache(data.key)
38
- }
39
- })
40
- }
41
- },
42
- methods: {
43
- // 加载需要排除缓存的路由配置
44
- loadCacheConfig (routes, pCache = true) {
45
- routes.forEach(item => {
46
- const cacheAble = item.meta?.page?.cacheAble ?? pCache ?? true
47
- if (!cacheAble) {
48
- this.excludeKeys.push(new RegExp(`${item.path.replace(/:[^/]*/g, '[^/]*')}(\\?.*)?\\d*$`))
49
- }
50
- if (item.children) {
51
- this.loadCacheConfig(item.children, cacheAble)
52
- }
53
- })
54
- },
55
- // 刷新页面方法
56
- refresh () {
57
- this.refreshing = true
58
- setTimeout(() => {
59
- this.refreshing = false
60
- }, 200)
61
- },
62
- // 清除特定页面的缓存
63
- clearCache (key) {
64
- this.clearCaches = [key]
65
- }
66
- },
67
- watch: {
68
- '$router.options.routes': function (val) {
69
- this.excludeKeys = []
70
- this.loadCacheConfig(val)
71
- }
15
+ ...mapState('setting', ['multiPage', 'animate'])
72
16
  }
73
17
  }
74
18
  </script>
@@ -1,135 +1,188 @@
1
1
  const { homePage } = require('../../config')
2
- // 视图组件
2
+ // 视图组件
3
3
  const view = {
4
- tabs: () =>
5
- import('@vue2-client/layouts/tabs'),
6
- blank: () =>
7
- import('@vue2-client/layouts/BlankView'),
8
- page: () =>
9
- import('@vue2-client/layouts/PageView'),
10
- // his-web$ceshiGrid?type=GridView&configName=RxPreparedMed
11
- gridView: () =>
12
- import('@vue2-client/layouts/GridView'),
13
- login: () =>
14
- import('@vue2-client/pages/login/Login'),
15
- loginv3: () =>
16
- import('@vue2-client/pages/login/LoginV3')
17
- }
18
- // 动态路由对象定义
4
+ tabs: () =>
5
+ import('@vue2-client/layouts/tabs'),
6
+ blank: () =>
7
+ import('@vue2-client/layouts/BlankView'),
8
+ page: () =>
9
+ import('@vue2-client/layouts/PageView'),
10
+ // his-web$ceshiGrid?type=GridView&configName=RxPreparedMed
11
+ gridView: () =>
12
+ import('@vue2-client/layouts/GridView'),
13
+ login: () =>
14
+ import('@vue2-client/pages/login/Login'),
15
+ loginv3: () =>
16
+ import('@vue2-client/pages/login/LoginV3')
17
+ }
18
+ // 动态路由对象定义
19
19
  const routerResource = {}
20
- // --------------------------------------基本视图组件--------------------------------------
21
- // 空白视图
20
+ // --------------------------------------基本视图组件--------------------------------------
21
+ // 空白视图
22
22
  routerResource.blank = view.blank
23
- // 单页面视图
23
+ // 单页面视图
24
24
  routerResource.singlePage = view.blank
25
- // 栅格配置视图
25
+ // 栅格配置视图
26
26
  routerResource.gridView = view.gridView
27
27
 
28
28
  // --------------------------------------仪表盘--------------------------------------
29
29
  routerResource.dashboard = view.blank
30
- // 工作台
30
+ // 工作台
31
31
  routerResource.workplace = () =>
32
- import('@vue2-client/pages/dashboard/workplace')
33
- // --------------------------------------系统配置--------------------------------------
32
+ import('@vue2-client/pages/dashboard/workplace')
33
+ // --------------------------------------系统配置--------------------------------------
34
34
  routerResource.system = view.blank
35
- // 字典管理
35
+ // 字典管理
36
36
  routerResource.dictionaryManage = () =>
37
- import('@vue2-client/pages/system/dictionary')
38
- // 文件管理
37
+ import('@vue2-client/pages/system/dictionary')
38
+ // 文件管理
39
39
  routerResource.fileManager = () =>
40
- import('@vue2-client/pages/system/file')
41
- // 登录日志
40
+ import('@vue2-client/pages/system/file')
41
+ // 登录日志
42
42
  routerResource.loginInfor = () =>
43
- import('@vue2-client/pages/system/monitor/loginInfor')
44
- // 操作日志
43
+ import('@vue2-client/pages/system/monitor/loginInfor')
44
+ // 操作日志
45
45
  routerResource.operLog = () =>
46
- import('@vue2-client/pages/system/monitor/operLog')
47
- // 系统问题反馈工单
46
+ import('@vue2-client/pages/system/monitor/operLog')
47
+ // 系统问题反馈工单
48
48
  routerResource.submitTicket = () =>
49
- import('@vue2-client/pages/system/ticket')
50
- // 通用服务评价
49
+ import('@vue2-client/pages/system/ticket')
50
+ // 通用服务评价
51
51
  routerResource.ServiceReview = () =>
52
- import('@vue2-client/pages/ServiceReview')
53
- // 系统设置
52
+ import('@vue2-client/pages/ServiceReview')
53
+ // 系统设置
54
54
  routerResource.settings = () =>
55
- import('@vue2-client/pages/system/settings')
56
- // AMIS示例页面
55
+ import('@vue2-client/pages/system/settings')
56
+ // AMIS示例页面
57
57
  routerResource.amisDemo = () =>
58
- import('@vue2-client/pages/AMisDemo/AMisDemo')
59
- // 页面编辑器
58
+ import('@vue2-client/pages/AMisDemo/AMisDemo')
59
+ // 页面编辑器
60
60
  routerResource.editablePage = () =>
61
61
  import('@vue2-client/pages/lowCode/lowCodeEditor.vue')
62
- // 数据检索
62
+ // 数据检索
63
63
  routerResource.dynamicStatistics = () =>
64
- import('@vue2-client/pages/DynamicStatistics')
65
- // 数据检索(新)
64
+ import('@vue2-client/pages/DynamicStatistics')
65
+ // 数据检索(新)
66
66
  routerResource.newDynamicStatistics = () =>
67
67
  import('@vue2-client/pages/NewDynamicStatistics')
68
- // 示例页面
68
+ // 示例页面
69
69
  routerResource.example = {
70
- name: '示例页面',
71
- path: 'example',
72
- // component: () => import('@vue2-client/base-client/components/common/XAddNativeForm/demo.vue'),
73
- // component: () => import('@vue2-client/base-client/components/common/XFormGroup/demo.vue'),
74
- // component: () => import('@vue2-client/base-client/components/common/XReport/XReportDemo.vue'),
75
- component: () => import('@vue2-client/base-client/components/common/XFormTable/demo.vue'),
76
- // component: () => import('@vue2-client/base-client/components/common/XDatePicker/demo.vue'),
77
- // component: () => import('@vue2-client/base-client/components/common/XTab/XTabDemo.vue'),
78
- // component: () => import('@vue2-client/base-client/components/common/XReportGrid/XReportDemo.vue'),
79
- // component: () => import('@vue2-client/pages/WorkflowDetail/WorkFlowDemo.vue'),
80
- // component: () => import('@vue2-client/base-client/components/common/XConversation/XConversationDemo.vue'),
81
- // component: () => import('@vue2-client/base-client/components/common/XButtons/XButtonDemo.vue'),
82
- // component: () => import('@vue2-client/base-client/components/common/XLabelSelect/XLabelSelectDemo.vue'),
83
- // component: () => import('@vue2-client/base-client/components/common/XCheckList/XCheckList.vue'),
84
- // component: () => import('@vue2-client/base-client/components/common/XPrint/Demo.vue'),
85
- // component: () => import('@vue2-client/base-client/components/AI/demo.vue'),
86
- // component: () => import('@vue2-client/components/g2Charts/demo.vue'),
70
+ path: 'example',
71
+ name: '示例主页面',
72
+ component: () => import('@vue2-client/pages/Example'),
73
+ children: [
74
+ {
75
+ path: '',
76
+ name: '示例页面2',
77
+ redirect: 'default',
78
+ meta: {
79
+ // 菜单中不显示
80
+ invisible: true,
81
+ }
82
+ },
83
+ {
84
+ path: 'default',
85
+ name: '示例页面',
86
+ // component: () => import('@vue2-client/base-client/components/common/XAddNativeForm/demo.vue'),
87
+ // component: () => import('@vue2-client/base-client/components/common/XFormGroup/demo.vue'),
88
+ component: () => import('@vue2-client/base-client/components/common/XReport/XReportDemo.vue'),
89
+ // component: () => import('@vue2-client/base-client/components/common/XFormTable/demo.vue'),
90
+ // component: () => import('@vue2-client/base-client/components/common/XDatePicker/demo.vue'),
91
+ // component: () => import('@vue2-client/base-client/components/common/XTab/XTabDemo.vue'),
92
+ // component: () => import('@vue2-client/base-client/components/common/XReportGrid/XReportDemo.vue'),
93
+ // component: () => import('@vue2-client/pages/WorkflowDetail/WorkFlowDemo.vue'),
94
+ // component: () => import('@vue2-client/base-client/components/common/XConversation/XConversationDemo.vue'),
95
+ // component: () => import('@vue2-client/base-client/components/common/XButtons/XButtonDemo.vue'),
96
+ // component: () => import('@vue2-client/base-client/components/common/XLabelSelect/XLabelSelectDemo.vue'),
97
+ // component: () => import('@vue2-client/base-client/components/common/XCheckList/XCheckList.vue'),
98
+ // component: () => import('@vue2-client/base-client/components/common/XPrint/Demo.vue'),
99
+ // component: () => import('@vue2-client/base-client/components/AI/demo.vue'),
100
+ // component: () => import('@vue2-client/components/g2Charts/demo.vue'),
101
+ meta: {
102
+ // 菜单中不显示
103
+ invisible: true,
104
+ }
105
+ },
106
+ {
107
+ path: 'sub-example',
108
+ name: '示例页面1',
109
+ component: () => import('@vue2-client/pages/SubExample'),
110
+ meta: {
111
+ // 菜单中不显示
112
+ invisible: true,
113
+ // 跳转不打开新页签
114
+ noPusTabs: true
115
+ }
116
+ },
117
+ {
118
+ path: 'x-tree-one-pro-example',
119
+ name: 'TreeView布局示例',
120
+ component: () => import('@vue2-client/pages/XTreeOneProExample'),
121
+ meta: {
122
+ // 菜单中不显示
123
+ invisible: true,
124
+ // 跳转不打开新页签
125
+ noPusTabs: true
126
+ }
127
+ },
128
+ {
129
+ path: 'page-view-example',
130
+ name: 'PageView示例',
131
+ component: () => import('@vue2-client/pages/XPageViewExample'),
132
+ meta: {
133
+ // 菜单中不显示
134
+ invisible: true,
135
+ // 跳转不打开新页签
136
+ noPusTabs: true
137
+ }
138
+ },
139
+ ]
87
140
  }
88
141
  // routerResource.example = () =>
89
142
  // import('@vue2-client/pages/Example')
90
143
  routerResource.XReportView = () =>
91
- import('@vue2-client/pages/XReportView')
144
+ import('@vue2-client/pages/XReportView')
92
145
 
93
146
  routerResource.XReportGrid = () =>
94
- import('@vue2-client/base-client/components/common/XReportGrid/XReportDemo')
147
+ import('@vue2-client/base-client/components/common/XReportGrid/XReportDemo')
95
148
 
96
149
  routerResource.XTab = () =>
97
150
  import('@vue2-client/base-client/components/common/XTab/XTabDemo')
98
151
 
99
152
  console.log(process.env)
100
- // 基础路由组件注册
153
+ // 基础路由组件注册
101
154
  const routerMap = {
102
- login: {
103
- authority: '*',
104
- path: '/login',
105
- component: process.env.VUE_APP_LOGIN_VERSION === 'V3'
106
- ? view.loginv3 : view.login
107
- },
108
- root: {
109
- path: '/',
110
- name: '首页',
111
- redirect: homePage,
112
- component: process.env.VUE_APP_SINGLE_PAPER === 'TRUE' ? view.blank : view.tabs,
113
- },
114
- exp403: {
115
- authority: '*',
116
- name: 'exp403',
117
- path: '403',
118
- component: () =>
119
- import('@vue2-client/pages/exception/403')
120
- },
121
- exp404: {
122
- name: 'exp404',
123
- path: '404',
124
- component: () =>
125
- import('@vue2-client/pages/exception/404')
126
- },
127
- exp500: {
128
- name: 'exp500',
129
- path: '500',
130
- component: () =>
131
- import('@vue2-client/pages/exception/500')
132
- }
155
+ login: {
156
+ authority: '*',
157
+ path: '/login',
158
+ component: process.env.VUE_APP_LOGIN_VERSION === 'V3'
159
+ ? view.loginv3 : view.login
160
+ },
161
+ root: {
162
+ path: '/',
163
+ name: '首页',
164
+ redirect: homePage,
165
+ component: process.env.VUE_APP_SINGLE_PAPER === 'TRUE' ? view.blank : view.tabs,
166
+ },
167
+ exp403: {
168
+ authority: '*',
169
+ name: 'exp403',
170
+ path: '403',
171
+ component: () =>
172
+ import('@vue2-client/pages/exception/403')
173
+ },
174
+ exp404: {
175
+ name: 'exp404',
176
+ path: '404',
177
+ component: () =>
178
+ import('@vue2-client/pages/exception/404')
179
+ },
180
+ exp500: {
181
+ name: 'exp500',
182
+ path: '500',
183
+ component: () =>
184
+ import('@vue2-client/pages/exception/500')
185
+ }
133
186
  }
134
187
  Object.assign(routerMap, routerResource)
135
188
  export default routerMap