mirror of
https://github.com/primefaces/primevue.git
synced 2025-05-10 01:12:37 +00:00
Revert "Refactor #3965 - Menu components cx implementation fixes"
This reverts commit 8181d7ee85
.
This commit is contained in:
parent
fab841141e
commit
79e5a5745c
7 changed files with 29 additions and 30 deletions
|
@ -35,11 +35,10 @@ const classes = {
|
|||
start: 'p-menu-start',
|
||||
menu: 'p-menu-list p-reset',
|
||||
submenuHeader: 'p-submenu-header',
|
||||
separator: ({ item }) => ['p-menuitem-separator', item.class],
|
||||
separator: 'p-menuitem-separator',
|
||||
end: 'p-menu-end',
|
||||
menuitem: ({ context, item }) => [
|
||||
menuitem: ({ context }) => [
|
||||
'p-menuitem',
|
||||
item.class,
|
||||
{
|
||||
'p-focus': context.id === context.focusedOptionId,
|
||||
'p-disabled': context.disabled()
|
||||
|
@ -53,7 +52,7 @@ const classes = {
|
|||
'router-link-active-exact': context.exact && isExactActive
|
||||
}
|
||||
],
|
||||
icon: ({ item }) => ['p-menuitem-icon', item.icon],
|
||||
icon: 'p-menuitem-icon',
|
||||
label: 'p-menuitem-text'
|
||||
};
|
||||
|
||||
|
|
|
@ -26,10 +26,10 @@
|
|||
</li>
|
||||
<template v-for="(child, j) of item.items" :key="child.label + i + '_' + j">
|
||||
<PVMenuitem v-if="visible(child) && !child.separator" :id="id + '_' + i + '_' + j" :item="child" :templates="$slots" :exact="exact" :focusedOptionId="focusedOptionId" @item-click="itemClick" :pt="pt" />
|
||||
<li v-else-if="visible(child) && child.separator" :key="'separator' + i + j" :class="cx('separator', { item })" :style="child.style" role="separator" v-bind="ptm('separator')"></li>
|
||||
<li v-else-if="visible(child) && child.separator" :key="'separator' + i + j" :class="[cx('separator'), item.class]" :style="child.style" role="separator" v-bind="ptm('separator')"></li>
|
||||
</template>
|
||||
</template>
|
||||
<li v-else-if="visible(item) && item.separator" :key="'separator' + i.toString()" :class="cx('separator', { item })" :style="item.style" role="separator" v-bind="ptm('separator')"></li>
|
||||
<li v-else-if="visible(item) && item.separator" :key="'separator' + i.toString()" :class="[cx('separator'), item.class]" :style="item.style" role="separator" v-bind="ptm('separator')"></li>
|
||||
<PVMenuitem v-else :key="label(item) + i.toString()" :id="id + '_' + i" :item="item" :templates="$slots" :exact="exact" :focusedOptionId="focusedOptionId" @item-click="itemClick" :pt="pt" />
|
||||
</template>
|
||||
</ul>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<li
|
||||
v-if="visible()"
|
||||
:id="id"
|
||||
:class="getCXOptions('menuitem', { item })"
|
||||
:class="[getCXOptions('menuitem'), item.class]"
|
||||
role="menuitem"
|
||||
:style="item.style"
|
||||
:aria-label="label()"
|
||||
|
@ -15,14 +15,14 @@
|
|||
<template v-if="!templates.item">
|
||||
<router-link v-if="item.to && !disabled()" v-slot="{ navigate, href, isActive, isExactActive }" :to="item.to" custom>
|
||||
<a v-ripple :href="href" :class="getCXOptions('action', { isActive, isExactActive })" tabindex="-1" aria-hidden="true" @click="onItemActionClick($event, navigate)" v-bind="getPTOptions('action')">
|
||||
<component v-if="templates.itemicon" :is="templates.itemicon" :item="item" :class="getCXOptions('icon', { item })" />
|
||||
<span v-else-if="item.icon" :class="getCXOptions('icon', { item })" v-bind="getPTOptions('icon')" />
|
||||
<component v-if="templates.itemicon" :is="templates.itemicon" :item="item" :class="[getCXOptions('icon'), item.icon]" />
|
||||
<span v-else-if="item.icon" :class="[getCXOptions('icon'), item.icon]" v-bind="getPTOptions('icon')" />
|
||||
<span :class="getCXOptions('label')" v-bind="getPTOptions('label')">{{ label() }}</span>
|
||||
</a>
|
||||
</router-link>
|
||||
<a v-else v-ripple :href="item.url" :class="getCXOptions('action')" :target="item.target" tabindex="-1" aria-hidden="true" v-bind="getPTOptions('action')">
|
||||
<component v-if="templates.itemicon" :is="templates.itemicon" :item="item" :class="getCXOptions('icon', { item })" />
|
||||
<span v-else-if="item.icon" :class="getCXOptions('icon', { item })" v-bind="getPTOptions('icon')" />
|
||||
<component v-if="templates.itemicon" :is="templates.itemicon" :item="item" :class="[getCXOptions('icon'), item.icon]" />
|
||||
<span v-else-if="item.icon" :class="[getCXOptions('icon'), item.icon]" v-bind="getPTOptions('icon')" />
|
||||
<span :class="getCXOptions('label')" v-bind="getPTOptions('label')">{{ label() }}</span>
|
||||
</a>
|
||||
</template>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue