tdesign-vue-next
Version:
TDesign Component for vue-next
1 lines • 4.82 kB
Source Map (JSON)
{"version":3,"file":"link.mjs","sources":["../../../components/link/link.tsx"],"sourcesContent":["import { computed, defineComponent } from 'vue';\nimport {\n useConfig,\n useContent,\n useTNodeJSX,\n useDisabled,\n usePrefixClass,\n useCommonClassName,\n} from '@tdesign/shared-hooks';\n\nimport props from './props';\n\nexport default defineComponent({\n name: 'TLink',\n props,\n emits: ['click'],\n setup(props, { emit }) {\n const renderContent = useContent();\n const renderTNodeJSX = useTNodeJSX();\n const COMPONENT_NAME = usePrefixClass('link');\n const { STATUS, SIZE } = useCommonClassName();\n const { classPrefix } = useConfig('classPrefix');\n const isDisabled = useDisabled();\n\n const linkClass = computed(() => [\n `${COMPONENT_NAME.value}`,\n `${COMPONENT_NAME.value}--theme-${props.theme}`,\n {\n [SIZE.value[props.size]]: props.size !== 'medium',\n [STATUS.value.disabled]: isDisabled.value,\n [`${classPrefix.value}-is-underline`]: props.underline,\n [`${COMPONENT_NAME.value}--hover-${props.hover}`]: !isDisabled.value,\n },\n ]);\n // 禁用时 无点击事件\n const handleClick = (event: MouseEvent) => {\n if (!isDisabled.value) emit('click', event);\n };\n return () => {\n const linkContent = renderContent('default', 'content');\n const prefix = renderTNodeJSX('prefixIcon');\n const suffix = renderTNodeJSX('suffixIcon');\n\n return (\n <a\n class={[...linkClass.value]}\n href={isDisabled.value || !props.href ? undefined : props.href}\n target={!props.target ? undefined : props.target}\n download={!props.download ? undefined : props.download}\n onClick={handleClick}\n >\n {prefix ? <span class={`${COMPONENT_NAME.value}__prefix-icon`}>{prefix}</span> : null}\n {linkContent}\n {suffix ? <span class={`${COMPONENT_NAME.value}__suffix-icon`}>{suffix}</span> : null}\n </a>\n );\n };\n },\n});\n"],"names":["defineComponent","name","props","emits","setup","emit","_ref","renderContent","useContent","renderTNodeJSX","useTNodeJSX","COMPONENT_NAME","usePrefixClass","_useCommonClassName","useCommonClassName","STATUS","SIZE","_useConfig","useConfig","classPrefix","isDisabled","useDisabled","linkClass","computed","concat","value","theme","_defineProperty","size","disabled","underline","hover","handleClick","event","linkContent","prefix","suffix","_createVNode","_toConsumableArray","href","target","download"],"mappings":"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"}