birdpaper-ui
Version:
一个通用的 vue3 UI组件库。A common vue3 UI component library.
35 lines (34 loc) • 814 B
JavaScript
import { defineComponent, computed } from "vue";
import { IconCloseLine } from "birdpaper-icon";
const _sfc_main = defineComponent({
name: "Tag",
props: {
/** 标签图标 */
icon: { type: Object },
status: { type: String, default: "normal" },
dot: { type: Boolean, default: false },
closeable: { type: Boolean, default: false }
},
components: { IconCloseLine },
emits: ["close"],
setup(props, { emit, slots }) {
const name = "bp-tag";
const cls = computed(() => {
return [name, props.dot ? `${name}-dot-box` : `${name}-${props.status}`];
});
const handleClose = () => {
if (!props.closeable)
return;
emit("close");
};
return {
name,
cls,
slots,
handleClose
};
}
});
export {
_sfc_main as default
};