我有一个组件,在开始的时候,从数据库中获取数据。它建议检查输入值是否为真或假。但问题是,这并不是检查它的真实性。我试过了:已经检查过了,但由于双向绑定,我需要使用v-模型。
代码:
<input type="checkbox" v-model="data">
const data = ref(false)
onBeforeMount(async () => {
await data = fetchingData()
})
我没有写洞码,因为代码在另一台电脑上,这是头上写的。但我觉得V型车没检查过。如果我使用:checked,它就像一个符咒。
也许这是一个新手的错误,但没有使用:检查:变更,我没有看到任何解决方案。
发布于 2022-07-05 22:03:27
对于反应性,您应该使用data.value
而不是data
。为了演示的目的,我直接将值赋值为true
。您可以用API调用代码替换它。
现场演示
<script type="module" src="https://cdnjs.cloudflare.com/ajax/libs/vue/3.0.0-rc.5/vue.esm-browser.js"></script>
<div id="app">
<input type="checkbox" v-model="data"/>
</div>
<script type="module">
import {ref, createApp, onBeforeMount } from 'https://cdnjs.cloudflare.com/ajax/libs/vue/3.0.0-rc.5/vue.esm-browser.js';
const app = createApp({
setup() {
let data = ref(false)
onBeforeMount(() => {
// data = true ❌
data.value = true // ✅
})
return { data };
}
});
app.mount('#app')
</script>
发布于 2022-07-05 20:59:35
我不认为这是复选框,而是应该使用use the .value
when you write to a ref
。否则,你失去反应性和v-模型将无法工作。
onBeforeMount(async () => {
data.value = await fetchingData()
})
希望这能有所帮助。
https://stackoverflow.com/questions/72878013
复制相似问题