Unverified Commit 2e9ef838 authored by Sendya's avatar Sendya

fix: menu router-link

parent 628574c6
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
"Sendya <18x@loacg.com>" "Sendya <18x@loacg.com>"
], ],
"scripts": { "scripts": {
"dev": "vite --force", "dev": "vite",
"build": "vue-tsc --noEmit && vite build", "build": "vue-tsc --noEmit && vite build",
"serve": "vite preview" "serve": "vite preview"
}, },
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
"vue-router": "^4.0.3" "vue-router": "^4.0.3"
}, },
"dependencies": { "dependencies": {
"ant-design-vue": "^2.2.1", "ant-design-vue": "^2.2.2",
"lodash-es": "^4.17.21", "lodash-es": "^4.17.21",
"vue": "^3.1.0", "vue": "^3.1.0",
"vue-router": "^4.0.10" "vue-router": "^4.0.10"
......
...@@ -173,15 +173,17 @@ class MenuUtil { ...@@ -173,15 +173,17 @@ class MenuUtil {
); );
} }
const [title, icon] = this.getMenuItem(item);
return ( return (
((this.props.menuItemRender && this.props.menuItemRender(item)) as VNode) || ( ((this.props.menuItemRender && this.props.menuItemRender(item)) as VNode) || (
<Menu.Item <Menu.Item
disabled={item.meta?.disabled} disabled={item.meta?.disabled}
danger={item.meta?.danger} danger={item.meta?.danger}
key={item.path} key={item.path}
icon={item.meta?.icon && <LazyIcon icon={item.meta.icon} />} icon={icon}
> >
{this.getMenuItem(item)} {title}
</Menu.Item> </Menu.Item>
) )
); );
...@@ -191,7 +193,7 @@ class MenuUtil { ...@@ -191,7 +193,7 @@ class MenuUtil {
const meta = Object.assign({}, item.meta); const meta = Object.assign({}, item.meta);
const target = (meta.target || null) as string | null; const target = (meta.target || null) as string | null;
const hasUrl = isUrl(item.path); const hasUrl = isUrl(item.path);
const CustomTag: any = resolveComponent((target && 'a') || 'router-link'); const CustomTag: any = (target && 'a') || resolveComponent('router-link');
const props = { to: { name: item.name } }; const props = { to: { name: item.name } };
const attrs = hasUrl || target ? { ...item.meta, href: item.path, target: target } : {}; const attrs = hasUrl || target ? { ...item.meta, href: item.path, target: target } : {};
...@@ -207,7 +209,15 @@ class MenuUtil { ...@@ -207,7 +209,15 @@ class MenuUtil {
</CustomTag> </CustomTag>
); );
return defaultTitle; const icon =
(item.meta?.icon && (
<CustomTag {...attrs} {...props} class={`${prefixCls}-menu-item`}>
<LazyIcon icon={item.meta.icon} />
</CustomTag>
)) ||
null;
return [defaultTitle, icon];
}; };
conversionPath = (path: string) => { conversionPath = (path: string) => {
......
...@@ -916,10 +916,10 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: ...@@ -916,10 +916,10 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0:
dependencies: dependencies:
color-convert "^2.0.1" color-convert "^2.0.1"
ant-design-vue@^2.2.1: ant-design-vue@^2.2.2:
version "2.2.1" version "2.2.2"
resolved "https://registry.yarnpkg.com/ant-design-vue/-/ant-design-vue-2.2.1.tgz#263716745a8a92673b4b3ba2d382919e38129212" resolved "https://registry.yarnpkg.com/ant-design-vue/-/ant-design-vue-2.2.2.tgz#197388583c4e0b8ccd9c50ed19831ede27c2b919"
integrity sha512-pxcvVhxQ39JkWl8uLq+W51FIho4kJQve3BhnnlSTz8rcg6yctz6kH+ieOA20AWhkau+/Gk0X2rug2bjBpiA0hw== integrity sha512-Gmed9dVw4oqYmuO3ubkXbRBadldE82XSt6Gqq3F2grvORKXYoJF/3CaMwfyRN81UaoRhWVTHmLeGLzuVpwJepw==
dependencies: dependencies:
"@ant-design/icons-vue" "^6.0.0" "@ant-design/icons-vue" "^6.0.0"
"@babel/runtime" "^7.10.5" "@babel/runtime" "^7.10.5"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment