Add watch for props.selected in Select.vue

This commit is contained in:
kur0nek-o 2024-02-23 14:29:48 +07:00
parent 665ca3be4a
commit ad6e55ed24

View File

@ -4,7 +4,7 @@ interface DataItem {
name: any
}
import { ref, computed } from 'vue'
import { ref, computed, watch } from 'vue'
import { RichSelect } from '@flavorly/vanilla-components'
const props = defineProps({
@ -21,10 +21,25 @@ const props = defineProps({
default: () => ({ id: 0, name: '' })
}
})
const emit = defineEmits(['update:selected'])
const emit = defineEmits(['update:selected'])
const data = computed(() => [{ id: 0, name: props.placeholder }, ...props.data])
const selected = ref(data.value[0].id)
computed(() => {
if (props.selected.id === 0) {
selected.value = 0
}
})
watch(
() => props.selected,
(value: any) => {
if (value.id === 0) {
selected.value = 0
}
}
)
</script>
<template>