diff --git a/src/assets/svg/icon-intelligentSolution.svg b/src/assets/svg/icon-intelligentSolution.svg new file mode 100644 index 0000000..d92d7ec --- /dev/null +++ b/src/assets/svg/icon-intelligentSolution.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/assets/svg/icon-mediaAccount.svg b/src/assets/svg/icon-mediaAccount.svg new file mode 100644 index 0000000..c97d96f --- /dev/null +++ b/src/assets/svg/icon-mediaAccount.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/assets/svg/icon-putAccount.svg b/src/assets/svg/icon-putAccount.svg new file mode 100644 index 0000000..0228b70 --- /dev/null +++ b/src/assets/svg/icon-putAccount.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/assets/svg/icon-repository.svg b/src/assets/svg/icon-repository.svg new file mode 100644 index 0000000..bb76562 --- /dev/null +++ b/src/assets/svg/icon-repository.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/components/_base/menu/index.vue b/src/components/_base/menu/index.vue index 9714392..4a200a1 100644 --- a/src/components/_base/menu/index.vue +++ b/src/components/_base/menu/index.vue @@ -87,7 +87,31 @@ export default defineComponent({ // 跳过没有 name 的菜单项,防止 key 报错 if (!element?.name) return; - const icon = element?.meta?.icon ? () => h(element?.meta?.icon as object) : null; + console.log({ icon: element?.meta?.icon }); + // const icon element?.meta?.icon + const icon = element?.meta?.icon + ? (() => { + if (typeof element.meta.icon === 'string') { + return h( + 'svg', + { + style: { + width: '16px', + height: '16px', + }, + }, + [ + h('use', { + 'xlink:href': element.meta.icon, + }), + ], + ); + } else { + // 如果是对象,按原来的方式渲染 + return h(element.meta.icon as object); + } + })() + : null; if (element.children && element.children.length > 0) { nodes.push(