Refactor: replace named slots

This commit is contained in:
Raphael Beer 2020-02-24 18:26:14 +01:00
parent e74e5b071e
commit d90e4c2aa8
No known key found for this signature in database
GPG Key ID: C1AC5E018B25EF11
6 changed files with 27 additions and 30 deletions

View File

@ -12,20 +12,21 @@
/> />
</slot> </slot>
</template> </template>
<div slot="popover" slot-scope="{ toggleMenu }" class="content-menu-popover"> <template #popover="{ toggleMenu }">
<ds-menu :routes="routes"> <div class="content-menu-popover">
<ds-menu-item <ds-menu :routes="routes">
slot="menuitem" <ds-menu-item
slot-scope="item" #menuitem="item"
:route="item.route" :route="item.route"
:parents="item.parents" :parents="item.parents"
@click.stop.prevent="openItem(item.route, toggleMenu)" @click.stop.prevent="openItem(item.route, toggleMenu)"
> >
<base-icon :name="item.route.icon" /> <base-icon :name="item.route.icon" />
{{ item.route.label }} {{ item.route.label }}
</ds-menu-item> </ds-menu-item>
</ds-menu> </ds-menu>
</div> </div>
</template>
</dropdown> </dropdown>
</template> </template>

View File

@ -14,14 +14,12 @@
<base-icon class="dropdown-arrow" name="angle-down" /> <base-icon class="dropdown-arrow" name="angle-down" />
</a> </a>
<ds-menu <ds-menu
slot="popover" #popover="{ toggleMenu }"
slot-scope="{ toggleMenu }"
class="dropdown-menu-popover" class="dropdown-menu-popover"
:routes="filterOptions" :routes="filterOptions"
> >
<ds-menu-item <ds-menu-item
slot="menuitem" #menuitem="item"
slot-scope="item"
class="dropdown-menu-item" class="dropdown-menu-item"
:route="item.route" :route="item.route"
:parents="item.parents" :parents="item.parents"

View File

@ -13,15 +13,13 @@
<base-icon class="dropdown-arrow" name="angle-down" /> <base-icon class="dropdown-arrow" name="angle-down" />
</a> </a>
<ds-menu <ds-menu
slot="popover" #popover="{ toggleMenu }"
slot-scope="{ toggleMenu }"
class="locale-menu-popover" class="locale-menu-popover"
:matcher="matcher" :matcher="matcher"
:routes="routes" :routes="routes"
> >
<ds-menu-item <ds-menu-item
slot="menuitem" #menuitem="item"
slot-scope="item"
class="locale-menu-item" class="locale-menu-item"
:route="item.route" :route="item.route"
:parents="item.parents" :parents="item.parents"

View File

@ -2,7 +2,7 @@
<base-card> <base-card>
<h2 class="title">{{ $t('admin.categories.name') }}</h2> <h2 class="title">{{ $t('admin.categories.name') }}</h2>
<ds-table :data="Category" :fields="fields" condensed> <ds-table :data="Category" :fields="fields" condensed>
<template slot="icon" slot-scope="scope"> <template #icon="scope">
<base-icon :name="scope.row.icon" /> <base-icon :name="scope.row.icon" />
</template> </template>
</ds-table> </ds-table>

View File

@ -2,8 +2,8 @@
<base-card> <base-card>
<h2 class="title">{{ $t('admin.hashtags.name') }}</h2> <h2 class="title">{{ $t('admin.hashtags.name') }}</h2>
<ds-table :data="Tag" :fields="fields" condensed> <ds-table :data="Tag" :fields="fields" condensed>
<template slot="index" slot-scope="scope">{{ scope.index + 1 }}.</template> <template #index="scope">{{ scope.index + 1 }}.</template>
<template slot="id" slot-scope="scope"> <template #id="scope">
<nuxt-link :to="{ path: '/', query: { hashtag: encodeURI(scope.row.id) } }"> <nuxt-link :to="{ path: '/', query: { hashtag: encodeURI(scope.row.id) } }">
<b>#{{ scope.row.id | truncate(20) }}</b> <b>#{{ scope.row.id | truncate(20) }}</b>
</nuxt-link> </nuxt-link>

View File

@ -19,8 +19,8 @@
</base-card> </base-card>
<base-card v-if="User && User.length"> <base-card v-if="User && User.length">
<ds-table :data="User" :fields="fields" condensed> <ds-table :data="User" :fields="fields" condensed>
<template slot="index" slot-scope="scope">{{ scope.row.index + 1 }}.</template> <template #index="scope">{{ scope.row.index + 1 }}.</template>
<template slot="name" slot-scope="scope"> <template #name="scope">
<nuxt-link <nuxt-link
:to="{ :to="{
name: 'profile-id-slug', name: 'profile-id-slug',
@ -30,12 +30,12 @@
<b>{{ scope.row.name | truncate(20) }}</b> <b>{{ scope.row.name | truncate(20) }}</b>
</nuxt-link> </nuxt-link>
</template> </template>
<template slot="email" slot-scope="scope"> <template #email="scope">
<a :href="`mailto:${scope.row.email}`"> <a :href="`mailto:${scope.row.email}`">
<b>{{ scope.row.email }}</b> <b>{{ scope.row.email }}</b>
</a> </a>
</template> </template>
<template slot="slug" slot-scope="scope"> <template #slug="scope">
<nuxt-link <nuxt-link
:to="{ :to="{
name: 'profile-id-slug', name: 'profile-id-slug',
@ -45,7 +45,7 @@
<b>{{ scope.row.slug | truncate(20) }}</b> <b>{{ scope.row.slug | truncate(20) }}</b>
</nuxt-link> </nuxt-link>
</template> </template>
<template slot="createdAt" slot-scope="scope"> <template #createdAt="scope">
{{ scope.row.createdAt | dateTime }} {{ scope.row.createdAt | dateTime }}
</template> </template>
</ds-table> </ds-table>