Files
cdTestPlant3/cdTMP/src/components/ma-form/formItem/form-link.vue

39 lines
1.1 KiB
Vue
Raw Normal View History

2023-06-08 21:09:28 +08:00
<!--
2024-09-06 10:48:22 +08:00
- @Author XXX
- @Link XXX
2023-06-08 21:09:28 +08:00
-->
<template>
<slot :name="`form-${props.component.dataIndex}`" v-bind="props.component">
<a-link
:status="props.component.status"
:hoverable="props.component.hoverable"
:disabled="props.component.disabled"
:loading="props.component.loading"
:href="props.component.href"
2024-09-06 10:48:22 +08:00
@click="rv('onClick')"
2023-06-08 21:09:28 +08:00
>
<template #icon v-if="props.component.icon">
<component :is="props.component.icon" />
</template>
{{ props.component.title ?? "link" }}
</a-link>
</slot>
</template>
<script setup>
2024-09-06 10:48:22 +08:00
import { onMounted, inject } from "vue"
import { runEvent } from "../js/event.js"
2023-06-08 21:09:28 +08:00
const props = defineProps({
component: Object
})
2024-09-06 10:48:22 +08:00
const formModel = inject("formModel")
const getColumnService = inject("getColumnService")
const columns = inject("columns")
const rv = async (ev, value = undefined) =>
await runEvent(props.component, ev, { formModel, getColumnService, columns }, value)
rv("onCreated")
onMounted(() => rv("onMounted"))
2023-06-08 21:09:28 +08:00
</script>