Blame view

src/router/routes/modules/demo/feat.ts 6.8 KB
陈文彬 authored
1
2
import type { AppRouteModule } from '/@/router/types';
3
import { getParentLayout, LAYOUT } from '/@/router/constant';
4
import { t } from '/@/hooks/web/useI18n';
陈文彬 authored
5
6
const feat: AppRouteModule = {
vben authored
7
8
9
10
11
  path: '/feat',
  name: 'FeatDemo',
  component: LAYOUT,
  redirect: '/feat/icon',
  meta: {
12
    icon: 'ion:git-compare-outline',
13
    title: t('routes.demo.feat.feat'),
陈文彬 authored
14
  },
15
vben authored
16
  children: [
陈文彬 authored
17
    {
vben authored
18
      path: 'icon',
vben authored
19
      name: 'IconDemo',
20
      component: () => import('/@/views/demo/feat/icon/index.vue'),
vben authored
21
      meta: {
22
        title: t('routes.demo.feat.icon'),
vben authored
23
24
25
      },
    },
    {
26
27
28
29
30
31
32
33
      path: 'ws',
      name: 'WebSocket',
      component: () => import('/@/views/demo/feat/ws/index.vue'),
      meta: {
        title: t('routes.demo.feat.ws'),
      },
    },
    {
34
35
36
37
38
39
40
41
      path: 'session-timeout',
      name: 'SessionTimeout',
      component: () => import('/@/views/demo/feat/session-timeout/index.vue'),
      meta: {
        title: t('routes.demo.feat.sessionTimeout'),
      },
    },
    {
Vben authored
42
43
44
45
46
47
48
49
      path: 'print',
      name: 'Print',
      component: () => import('/@/views/demo/feat/print/index.vue'),
      meta: {
        title: t('routes.demo.feat.print'),
      },
    },
    {
vben authored
50
      path: 'tabs',
51
52
53
      name: 'TabsDemo',
      component: () => import('/@/views/demo/feat/tabs/index.vue'),
      meta: {
54
        title: t('routes.demo.feat.tabs'),
55
56
      },
    },
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
    {
      path: 'breadcrumb',
      name: 'BreadcrumbDemo',
      redirect: '/feat/breadcrumb/flat',
      component: getParentLayout('BreadcrumbDemo'),
      meta: {
        title: t('routes.demo.feat.breadcrumb'),
      },

      children: [
        {
          path: 'flat',
          name: 'BreadcrumbFlatDemo',
          component: () => import('/@/views/demo/feat/breadcrumb/FlatList.vue'),
          meta: {
            title: t('routes.demo.feat.breadcrumbFlat'),
          },
        },
        {
          path: 'flatDetail',
          name: 'BreadcrumbFlatDetailDemo',
          component: () => import('/@/views/demo/feat/breadcrumb/FlatListDetail.vue'),
          meta: {
            title: t('routes.demo.feat.breadcrumbFlatDetail'),
            hideMenu: true,
            hideTab: true,
            currentActiveMenu: '/feat/breadcrumb/flat',
          },
        },
        {
          path: 'children',
          name: 'BreadcrumbChildrenDemo',
          component: getParentLayout('BreadcrumbChildrenDemo'),
          redirect: '/feat/breadcrumb/children',
          meta: {
            title: t('routes.demo.feat.breadcrumbFlat'),
          },
          children: [
            {
              path: '',
              name: 'BreadcrumbChildren',
              component: () => import('/@/views/demo/feat/breadcrumb/ChildrenList.vue'),
              meta: {
                title: t('routes.demo.feat.breadcrumbChildren'),
101
                // hideBreadcrumb: true,
102
103
104
105
106
107
108
109
110
111
              },
            },
            {
              path: 'childrenDetail',
              name: 'BreadcrumbChildrenDetailDemo',
              component: () => import('/@/views/demo/feat/breadcrumb/ChildrenListDetail.vue'),
              meta: {
                currentActiveMenu: '/feat/breadcrumb/children',
                title: t('routes.demo.feat.breadcrumbChildrenDetail'),
                hideTab: true,
112
                // hideMenu: true,
113
114
115
116
117
118
              },
            },
          ],
        },
      ],
    },
119
120

    {
vben authored
121
      path: 'context-menu',
陈文彬 authored
122
123
124
      name: 'ContextMenuDemo',
      component: () => import('/@/views/demo/feat/context-menu/index.vue'),
      meta: {
125
        title: t('routes.demo.feat.contextMenu'),
陈文彬 authored
126
127
128
      },
    },
    {
vben authored
129
      path: 'download',
vben authored
130
131
132
      name: 'DownLoadDemo',
      component: () => import('/@/views/demo/feat/download/index.vue'),
      meta: {
133
        title: t('routes.demo.feat.download'),
vben authored
134
135
136
      },
    },
    {
vben authored
137
      path: 'click-out-side',
vben authored
138
      name: 'ClickOutSideDemo',
139
      component: () => import('/@/views/demo/feat/click-out-side/index.vue'),
vben authored
140
      meta: {
141
        title: t('routes.demo.feat.clickOutSide'),
vben authored
142
143
144
      },
    },
    {
vben authored
145
      path: 'img-preview',
陈文彬 authored
146
147
148
      name: 'ImgPreview',
      component: () => import('/@/views/demo/feat/img-preview/index.vue'),
      meta: {
149
        title: t('routes.demo.feat.imgPreview'),
陈文彬 authored
150
151
152
      },
    },
    {
vben authored
153
      path: 'copy',
陈文彬 authored
154
155
156
      name: 'CopyDemo',
      component: () => import('/@/views/demo/feat/copy/index.vue'),
      meta: {
157
        title: t('routes.demo.feat.copy'),
陈文彬 authored
158
159
160
      },
    },
    {
vben authored
161
      path: 'msg',
陈文彬 authored
162
163
164
      name: 'MsgDemo',
      component: () => import('/@/views/demo/feat/msg/index.vue'),
      meta: {
165
        title: t('routes.demo.feat.msg'),
陈文彬 authored
166
167
168
      },
    },
    {
vben authored
169
      path: 'watermark',
陈文彬 authored
170
171
172
      name: 'WatermarkDemo',
      component: () => import('/@/views/demo/feat/watermark/index.vue'),
      meta: {
173
        title: t('routes.demo.feat.watermark'),
陈文彬 authored
174
175
176
      },
    },
    {
vben authored
177
178
179
180
181
182
183
184
      path: 'ripple',
      name: 'RippleDemo',
      component: () => import('/@/views/demo/feat/ripple/index.vue'),
      meta: {
        title: t('routes.demo.feat.ripple'),
      },
    },
    {
vben authored
185
      path: 'full-screen',
陈文彬 authored
186
187
188
      name: 'FullScreenDemo',
      component: () => import('/@/views/demo/feat/full-screen/index.vue'),
      meta: {
189
        title: t('routes.demo.feat.fullScreen'),
陈文彬 authored
190
191
      },
    },
vben authored
192
    {
vben authored
193
      path: 'error-log',
vben authored
194
195
196
      name: 'ErrorLog',
      component: () => import('/@/views/sys/error-log/index.vue'),
      meta: {
197
        title: t('routes.demo.feat.errorLog'),
vben authored
198
199
      },
    },
200
201
202
203
204
205
206
207
208
    {
      path: 'excel',
      name: 'Excel',
      redirect: '/feat/excel/customExport',
      component: getParentLayout('Excel'),
      meta: {
        // icon: 'mdi:microsoft-excel',
        title: t('routes.demo.excel.excel'),
      },
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
      children: [
        {
          path: 'customExport',
          name: 'CustomExport',
          component: () => import('/@/views/demo/excel/CustomExport.vue'),
          meta: {
            title: t('routes.demo.excel.customExport'),
          },
        },
        {
          path: 'jsonExport',
          name: 'JsonExport',
          component: () => import('/@/views/demo/excel/JsonExport.vue'),
          meta: {
            title: t('routes.demo.excel.jsonExport'),
          },
        },
        {
          path: 'arrayExport',
          name: 'ArrayExport',
          component: () => import('/@/views/demo/excel/ArrayExport.vue'),
          meta: {
            title: t('routes.demo.excel.arrayExport'),
          },
        },
        {
          path: 'importExcel',
          name: 'ImportExcel',
          component: () => import('/@/views/demo/excel/ImportExcel.vue'),
          meta: {
            title: t('routes.demo.excel.importExcel'),
          },
        },
      ],
    },
245
    {
vben authored
246
      path: 'testTab/:id',
vben authored
247
248
249
      name: 'TestTab',
      component: () => import('/@/views/demo/feat/tab-params/index.vue'),
      meta: {
250
        title: t('routes.demo.feat.tab'),
251
        carryParam: true,
vben authored
252
253
      },
    },
陈文彬 authored
254
  ],
255
256
257
};

export default feat;