69 lines
1.7 KiB
Vue

<template>
<CustomCard>
<avue-crud
ref="crudRef"
v-model:page="pageData"
v-model:search="condition"
:table-loading="loading"
:data="data"
:option="option"
@search-change="handleSearch"
@search-reset="handleSearchReset"
@current-change="handleCurrentChange"
@size-change="handleSizeChange"
@row-save="handleSave"
@row-update="handleUpdete"
>
<template #menu="{ index, row }">
<el-dropdown popper-class="custom-table-operate">
<el-icon class="custom-table-operate__more"><More /></el-icon>
<template #dropdown>
<el-dropdown-menu>
<template v-for="item in actions" :key="item.name">
<el-dropdown-item @click="item.event(row, index)">
<el-button :type="item.type ?? 'primary'" :icon="item.icon" :size="item.size" :disabled="item.disabled" text>
{{ item.name == '查看' ? (row.status == 1 ? '启用' : '禁用') : item.name }}
</el-button>
</el-dropdown-item>
</template>
</el-dropdown-menu>
</template>
</el-dropdown></template
>
</avue-crud>
</CustomCard>
</template>
<script setup>
import CustomCard from '@/components/CustomCard.vue';
import useSoilTypeHook from './useSoilTypeHook';
const {
crudRef,
condition,
loading,
data,
pageData,
option,
actions,
handleSizeChange,
handleCurrentChange,
handleSearch,
handleSearchReset,
handleSave,
handleUpdete,
} = useSoilTypeHook();
/* --------------- data --------------- */
// #region
// #endregion
/* --------------- methods --------------- */
// #region
// #endregion
</script>
<style lang="scss" scoped></style>