From 175778137478488ba346f083ed3d6cdc55256419 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周六, 03 5月 2025 17:49:51 +0800
Subject: [PATCH] 22
---
HIAWms/web/src/components/BaseInput/BaseInput.tsx | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 54 insertions(+), 0 deletions(-)
diff --git a/HIAWms/web/src/components/BaseInput/BaseInput.tsx b/HIAWms/web/src/components/BaseInput/BaseInput.tsx
new file mode 100644
index 0000000..6747f1a
--- /dev/null
+++ b/HIAWms/web/src/components/BaseInput/BaseInput.tsx
@@ -0,0 +1,54 @@
+import { defineComponent, SetupContext, ref, computed } from 'vue'
+import styles from './BaseInput.module.scss'
+
+export default defineComponent({
+ name: 'BaseInput',
+ emits: ['update:modelValue', 'click'],
+ props: {
+ modelValue: {
+ type: [String, Number],
+ default: '',
+ },
+ placeholder: {
+ type: String,
+ default: '璇疯緭鍏�',
+ },
+ },
+ setup(props, { attrs, slots, emit }: SetupContext) {
+ const input = computed({
+ get() {
+ return props.modelValue
+ },
+ set(val) {
+ emit('update:modelValue', val)
+ },
+ })
+ const onClick = (evt: Event) => {
+ evt?.stopPropagation()
+ emit('click', evt)
+ }
+ return () => {
+ return (
+ <div class={styles.baseInput} onClick={onClick}>
+ <input
+ placeholder={props.placeholder}
+ class={{
+ [styles.input]: true,
+ [styles.hover]: true,
+ }}
+ v-model={input.value}
+ />
+ {/* <span class={styles.hasHover}>
+ {input.value ? (
+ input.value
+ ) : (
+ <span style="color:#929AB1;padding-right:200px">
+ {props.placeholder}
+ </span>
+ )}
+ </span> */}
+ </div>
+ )
+ }
+ },
+})
--
Gitblit v1.9.3