gpt4 book ai didi

vue.js - 如何在 Vue 3 Composition API 中使用计算方法更正 set v-model?

转载 作者:行者123 更新时间:2023-12-05 04:50:28 40 4
gpt4 key购买 nike

我有一个组件:

<template>
<input type="text" v-model="customerComponentModel" />
</template>
<script>
import { computed } from 'vue';
export default {
props: {
modelValue: Object,
},
setup(props, { emit }) {
const customerComponentModel = computed({
get: () => {
if (props.modelValue) {
return props.modelValue.Customer
} else {
return ''
}
},
set: (value) => {
????
});

return { customerComponentModel };
},
};
</script>

如果我通过 modelValue 向它发送数据,这个组件工作正常。如果 props.modelValue 未在父级中设置,我如何设置 customerComponentModel 值?我想以两种方式使用组件——有 Prop 和没有 Prop 。感谢您的帮助。

最佳答案

使用新的对象值发出一个 update:modelValue 事件。要仅更新 Customer 字段,发出的值应该是 props.modelValue 的克隆以及等于新值的新 Customer 字段:

export default {
props: {
modelValue: Object,
},
setup(prop, { emit }) {
const customerComponentModel = computed({
//...
set: (value) => {
emit('update:modelValue', {
...props.modelValue,
Customer: value,
})
}
});

return {
customerComponentModel
}
}
}

demo

关于vue.js - 如何在 Vue 3 Composition API 中使用计算方法更正 set v-model?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67257851/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com