19 lines
643 B
Vue
19 lines
643 B
Vue
<script setup lang="ts">
|
|
import { computed } from 'vue'
|
|
|
|
const props = defineProps<{ status: string }>()
|
|
|
|
const tone = computed(() => {
|
|
if (['正常', '启用', '已完成'].includes(props.status)) return 'success'
|
|
if (['待审核', '草稿', '待处理'].includes(props.status)) return 'warning'
|
|
if (['已受理', '已订舱', '运输中', '处理中'].includes(props.status)) return 'info'
|
|
if (['停用', '已取消', '已驳回', '失败'].includes(props.status)) return 'danger'
|
|
return 'neutral'
|
|
})
|
|
</script>
|
|
|
|
<template>
|
|
<span class="status-badge" :class="`is-${tone}`"><i aria-hidden="true" />{{ status }}</span>
|
|
</template>
|
|
|