|
@@ -43,8 +43,9 @@
|
|
|
:class="`${prefixCls}-submenu-title-icon`"
|
|
|
/>
|
|
|
</div>
|
|
|
- <template #content>
|
|
|
- <div v-bind="getEvents(true)" v-show="opened">
|
|
|
+ <!-- eslint-disable-next-line -->
|
|
|
+ <template #content v-show="opened">
|
|
|
+ <div v-bind="getEvents(true)">
|
|
|
<ul :class="[prefixCls, `${prefixCls}-${getTheme}`, `${prefixCls}-popup`]">
|
|
|
<slot></slot>
|
|
|
</ul>
|
|
@@ -78,7 +79,7 @@
|
|
|
import { isBoolean, isObject } from '/@/utils/is';
|
|
|
import Mitt from '/@/utils/mitt';
|
|
|
|
|
|
- const DELAY = 250;
|
|
|
+ const DELAY = 200;
|
|
|
export default defineComponent({
|
|
|
name: 'SubMenu',
|
|
|
components: {
|
|
@@ -189,6 +190,7 @@
|
|
|
const { disabled } = props;
|
|
|
if (disabled || unref(getCollapse)) return;
|
|
|
const opened = state.opened;
|
|
|
+
|
|
|
if (unref(getAccordion)) {
|
|
|
const { uidList } = getParentList();
|
|
|
rootMenuEmitter.emit('on-update-opened', {
|
|
@@ -196,6 +198,11 @@
|
|
|
parent: instance?.parent,
|
|
|
uidList: uidList,
|
|
|
});
|
|
|
+ } else {
|
|
|
+ rootMenuEmitter.emit('open-name-change', {
|
|
|
+ name: props.name,
|
|
|
+ opened: !opened,
|
|
|
+ });
|
|
|
}
|
|
|
state.opened = !opened;
|
|
|
}
|