vue3中,在一个模板下,共用同一个组件,如何区分?-灵析社区

来自武功山的爱

打个比方,有一个日期选择组件,然后表单中有2个输入框 import { ref } from 'vue'; import Calenda from './Calenda.vue'; let isShow = ref(false) function showCalenda(){ isShow = true } 点击其中一个输入框,显示相对应日期选择组件,我该怎么写????除了将v-if用不同的属性外,有没有其他啥方法???

阅读量:35

点赞量:0

问AI
import { ref } from 'vue'; import Calenda from './Calenda.vue'; const activeInput = ref(''); function showCalendar(inputName) { activeInput.value = inputName; } **可以使用一个变量来记录当前点击的是哪个输入框,然后根据这个变量来决定哪个日期选择组件显示 **添加了一个名为activeInput的响应式变量,用于记录当前点击的输入框名称。当点击某个输入框时,调用showCalendar()方法,并将对应的输入框名称作为参数传递进去。showCalendar()方法会更新activeInput的值为相应的输入框名称。 **然后,我们使用v-if指令来判断activeInput的值,决定是否显示对应的日期选择组件。只有当activeInput的值与输入框名称匹配时,才会显示该日期选择组件。 通过这种方式,我们可以根据点击的输入框来显示相应的日期选择组件,而不是将两个日期选择组件都显示出来