你给我的例子 ref is not defined
时间: 2023-10-17 08:30:19 浏览: 75
非常抱歉,我的错误。在 `Vue 3` 中使用 `ref` 需要通过 `Vue` 对象来访问,而不是直接访问 `ref`。以下是修改后的正确示例:
```html
<div id="app">
<input type="text" v-model="message">
<p>{{ message }}</p>
</div>
<script>
const app = Vue.createApp({
setup() {
const message = Vue.ref('Hello, Vue 3!')
Vue.onMounted(() => {
console.log('mounted')
})
return {
message,
}
}
})
app.mount('#app')
</script>
```
在上面的示例中,我们通过 `Vue.ref` 方法来定义响应式数据 `message`,并使用 `Vue.onMounted` 方法来定义组件挂载后的回调函数。在回调函数中,我们打印了一条日志。
需要注意的是,在 `Vue 3` 中,我们推荐使用 `setup` 方法来定义组件的逻辑,而不是像 `Vue 2` 中那样使用 `data`、`methods` 等选项。同时,在 `setup` 方法中,我们可以通过 `Vue.ref`、`Vue.reactive` 等方法来定义响应式数据,而不是像 `Vue 2` 中那样使用 `data` 选项。另外,在 `Vue 3` 中,我们使用了 `Vue.onMounted` 方法来定义组件挂载后的回调函数,而不是像 `Vue 2` 中那样使用 `mounted` 钩子函数。
阅读全文