Vue 初始化數組后操作另一個數組onMounted和watch

Vue 的父组件和子组件的生命周期钩子函数执行顺序可以归类为以下 4 部分:

1、加载渲染过程

父 beforeCreate -> 父 created -> 父 beforeMount -> 子 beforeCreate -> 子 created -> 子beforeMount -> 子 mounted -> 父 mounted

注意:mounted 不会保证所有的子组件也都被一起挂载。如果希望等到整个视图都渲染完毕,可以在 mounted 内部使用 vm.$nextTick

2. 父组件更新过程

父 beforeUpdate -> 父 updated

3. 子组件更新过程

父 beforeUpdate -> 子 beforeUpdate -> 子 updated -> 父 updated

4. 销毁过程

父 beforeDestroy -> 子 beforeDetroy -> 子 destroyed -> 父 destroyed

https://www.cnblogs.com/bala/p/15884167.html

解決方案1

通過鈎子函數操作,前提是emailAddArr 已經有數據。

所以typescript需要定義emailAddArr為全局變量,這樣會在第一時間賦值。

复制代码
const emailAddArr = ref([] as string[])

在函數前定義

export function useEmailSent() {                    

onMounted(() => {
  list.value = emailAddArr.value.map((item) => {
    elHelper.alertBox(item + '')
    return { emailValue: `${item}`, emailLabel: `${item}` }
  })
})

解決方案二

這個方案是最合理的

复制代码
watch(emailAddArr.value, () => {
  list.value = emailAddArr.value.map((item) => {
    elHelper.alertBox(item + '')
    return { emailValue: `${item}`, emailLabel: `${item}` }
  })
})
相关推荐
AlienZHOU2 小时前
AI Coding 时代下,我的技术面试实践分享
前端·后端·面试
Captaincc5 小时前
AI用量v0.1.11更新发布 新增 jusage doctor 诊断指令 托盘展示token 和余额 新增 AutoClaw 支持
前端·后端·vibecoding
计算机魔术师7 小时前
德国Wiki被黑后两周,OpenAI终于把模型失控的账本摊开了
前端
kyriewen7 小时前
我让 AI 当面试官面了我一轮:第 3 个追问我就卡住了(附 10 道追问清单)
前端·面试·ai编程
IT_陈寒8 小时前
Python的GIL把我坑惨了,多线程跑得比单线程还慢
前端·人工智能·后端
前端snow8 小时前
ai agent --- 多agent框架之图编排引擎-langgraph
前端
竹林8188 小时前
OmniPic Studio v3.2.1 核心技术架构与全平台发版解析文档
前端·浏览器
JamesZhang800788 小时前
页面内存只涨不跌? 一次泄漏排查, 牵出 WeakMap 的诞生
前端
Z小明8 小时前
第 6 章 组件进阶
前端·vue.js
江华森8 小时前
HTTP请求的完整过程详解:从DNS解析到TCP挥手的微秒级实战分析
前端