|
1 | 1 | import '@abraham/reflection' |
2 | | -import { createCurrentInjector, Hook, Mut, VueComponent } from 'vue3-oop' |
| 2 | +import { Component, Mut, VueComponent } from 'vue3-oop' |
3 | 3 | import { createApp } from 'vue' |
4 | 4 | import 'ant-design-vue/dist/antd.css' |
5 | | -import { Layout, Menu } from 'ant-design-vue' |
| 5 | +import { ConfigProvider, Layout, Menu } from 'ant-design-vue' |
6 | 6 | import { RouterLink, RouterView } from 'vue-router' |
7 | 7 | import { RouterStartService } from './router' |
8 | 8 | import { routes } from './router/routes' |
| 9 | +import zhCN from 'ant-design-vue/lib/locale/zh_CN' |
| 10 | +import { setup } from './setup' |
9 | 11 |
|
| 12 | +@Component({ providers: [RouterStartService] }) |
10 | 13 | class App extends VueComponent { |
11 | | - injector = createCurrentInjector([RouterStartService]) |
12 | 14 | @Mut() collapsed = false |
13 | 15 |
|
14 | | - @Hook('BeforeMount') |
15 | | - before() { |
16 | | - console.log(222) |
17 | | - } |
18 | | - |
19 | | - @Hook(['Mounted', 'BeforeMount']) |
20 | | - mounted() { |
21 | | - console.log(111) |
22 | | - } |
23 | 16 | render() { |
24 | 17 | return ( |
25 | | - <Layout style={{ minHeight: '100vh' }}> |
26 | | - <Layout.Sider v-model:collapsed={this.collapsed} collapsible> |
27 | | - <h2 |
28 | | - style={{ color: '#fff', textAlign: 'center', lineHeight: '40px' }} |
29 | | - > |
30 | | - VUE EXAMPLE |
31 | | - </h2> |
32 | | - <Menu theme={'dark'} mode={'inline'}> |
33 | | - {routes.map((r) => { |
34 | | - return ( |
35 | | - <Menu.SubMenu title={r.meta?.title} key={r.path}> |
36 | | - {r.children?.map((i) => { |
37 | | - return ( |
38 | | - <Menu.Item key={i.path}> |
39 | | - <RouterLink to={i.path} style={{ display: 'block' }}> |
40 | | - {i.meta?.title} |
41 | | - </RouterLink> |
42 | | - </Menu.Item> |
43 | | - ) |
44 | | - })} |
45 | | - </Menu.SubMenu> |
46 | | - ) |
47 | | - })} |
48 | | - </Menu> |
49 | | - </Layout.Sider> |
50 | | - <Layout.Content> |
51 | | - <RouterView></RouterView> |
52 | | - </Layout.Content> |
53 | | - </Layout> |
| 18 | + <ConfigProvider locale={zhCN}> |
| 19 | + <Layout style={{ minHeight: '100vh' }}> |
| 20 | + <Layout.Sider v-model:collapsed={this.collapsed} collapsible> |
| 21 | + <h2 |
| 22 | + style={{ color: '#fff', textAlign: 'center', lineHeight: '40px' }} |
| 23 | + > |
| 24 | + VUE 示例 |
| 25 | + </h2> |
| 26 | + <Menu theme={'dark'} mode={'inline'}> |
| 27 | + {routes.map((r) => { |
| 28 | + return ( |
| 29 | + <Menu.SubMenu title={r.meta?.title} key={r.path}> |
| 30 | + {r.children?.map((i) => { |
| 31 | + return ( |
| 32 | + <Menu.Item key={i.path}> |
| 33 | + <RouterLink to={i.path} style={{ display: 'block' }}> |
| 34 | + {i.meta?.title} |
| 35 | + </RouterLink> |
| 36 | + </Menu.Item> |
| 37 | + ) |
| 38 | + })} |
| 39 | + </Menu.SubMenu> |
| 40 | + ) |
| 41 | + })} |
| 42 | + </Menu> |
| 43 | + </Layout.Sider> |
| 44 | + <Layout.Content> |
| 45 | + <RouterView></RouterView> |
| 46 | + </Layout.Content> |
| 47 | + </Layout> |
| 48 | + </ConfigProvider> |
54 | 49 | ) |
55 | 50 | } |
56 | 51 | } |
57 | 52 |
|
58 | 53 | const app = createApp(App) |
| 54 | +setup(app) |
59 | 55 | app.mount('#app') |
0 commit comments