立即执行侦听器
默认情况下,侦听器仅在数据变化时触发。
immediate 选项
JavaScript
watch(
question,
async (newQuestion) => {
const answer = await fetchAnswer(newQuestion)
console.log(answer)
},
{ immediate: true }
)
侦听器创建时立即执行一次,后续数据变化也会触发。
应用场景
JavaScript
watch(
userId,
async (id) => {
user.value = await fetchUser(id)
},
{ immediate: true }
)
组件加载时立即获取数据。
对比
| 选项 | 初始执行 | 变化执行 |
|---|---|---|
| 默认 | 否 | 是 |
immediate: true | 是 | 是 |
immediate: true常用于初始化逻辑。
要点总结
{ immediate: true }使侦听器创建时执行一次- 适用于初始化数据请求
- 后续数据变化仍会正常触发
- 避免在 created 钩子中重复编写相同逻辑
📝 发现内容有误?点击此处直接编辑