版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章
HelloWorld与Vue3基础特性2.1Vue3实例创建createApp(RootComponent)mount('#app')mount(:应用实例方法,挂载应用到DOMVue:Vue3库的全局对象createApp(:新增全局方法,创建应用实例'#app':CSS选择器,指定挂载目标元素RootComponent:根组件对象(含data、methods、template)constvm=:保存应用实例引用作用:创建Vue3应用实例并指定根组件作用:将Vue3应用挂载到指定DOM元素每个Vue3应用都从createApp(开始,一个页面可创建多个独立应用实例组件实例(vm)应用实例挂载机制每个Vue3应用从createApp0开始挂载前:组件未初始化,模板未渲染vm.sdata:响应式数据对象一个页面可创建多个独立应用实例挂载后:生成响应式系统,渲染DOMvm.Sprops:接收的props一个应用实例只能挂载一个DOM挂载点元素内容被Vue生成的DOM替换vm.Sel:根DOM元素挂载后生成响应式系统,渲染DOM实现数据的双向绑定提供对组件所有属性和方法的访问应用实例管理全局配置,组件实例提供属性方法访问2.1Vue3实例创建响应式系统原理Vue2vsVue3对比创建方法:newVue(})→Vue.createApp(0)data选项必须为函数,返回普通JavaScript对象调用方式:Smount("#app')→.mount("#app")Vue3使用Proxy代理(Vue2用Object.defineProperty)结果:直接获得组件实例→获得应用实例依赖追踪:模板访问数据时,代理记录属性→依赖方映射3避免全局配置污染,链式调用更简洁,支持多个根实例Vue变更通知:数据修改时,代理精确触发依赖更新实现数据变动时视图的自动同步更新Proxy代理拦截get/set操作,实现精准的依赖追踪与变更通知2.1Vue3实例创建Vue3
程序执行流程步骤1步骤4步骤2步骤3步骤5步骤6步骤7建立响应式系统创建根组件对象渲染初始视图调用Vue.createApp查找DOM元素#app编译模板加载Vue库将模板编译为高效的虚拟DOM渲染函数创建和插入DOM节点,生成响应式系统代理拦截数通过CDN引入或模块导入Vue3库定义app对象,包含data、metthods等选项,data必须为函数,返回普通对象传入根组件对象,创建应用实例通过CSS选择器定位挂载目标元素据访问与修改,实现双向绑定编译时优化模板+运行时精准更新=原生级渲染性能2.1Vue3实例创建2.2
Vue3生命周期销毁阶段更新阶段挂载阶段创建阶段beforeUnmount实例销毁前,仍可访问数据和DOMbeforeCreate→实例初始化,响应式系统和事件机制建立前created→响应式数据初始化完成可访问data和methodsbeforeMount模板编译完成,DOM挂载前mounted→DOM挂载完成,可操作DOM节点beforeUpdate-数据变更后,虚拟DOM重新渲染前updated→DOM重渲染完成unmounted-)实例销毁完成,所有绑定解除钩子函数均为同步事件,this自动绑定当前组件实例,禁止使用箭头函数定义2.2.1认识生命周期2.2.2
生命周期钩子函数beforeCreateeCreatecreated时机:实例初始化后,响应式系统和事件机制建立前时机:响应式数据初始化完成后,DOM挂载前能力边界:无法访问data/computed和methods,this.Sel为undefined能力边界:可访问data/computed和methods,this.$el仍为undefined适用场景:执行数据相关的初始化逻辑适用场景:执行与组件状态无关的初始化逻辑典型应用:发起APi请求获取数据、初始化第三方库、设置定时器典型应用:在根实例设置全局加载状态注意事项:避免操作实例数据或DOM注意事项:避免操作DOM节点beforeCreate无数据访问权,created有数据访问权但无DOM访问权beforeMountmounted时机:模板编译完成后,DOM挂载前能力边界:可访问data/computed和methods,this.时机:DOM挂载完成后能力边界:可访问data/computed、methods和渲染完成的DOM节点,this.$el指向根元素执行DOM相关操作初始化图表库、绑定原生事件监听、获取元素尺寸避免同步修改响应式数据导致循环更新$el仍为undefined适用场景:典型应用:适用场景:执行最后的数据预处理逻辑典型应用:修改即将渲染的数据、初始化不依赖DOM的第三方库注意事项:注意事项:避免操作真实DOM节点beforeMount可预处理数据,mounted可操作DOM2.2.2
生命周期钩子函数beforeUpdateupdated时机:数据变更导致的DOM重渲染完成后;能力:可访问更新后的数据和最新DOM结构;时机:响应式数据变更后,虚拟DOM重新渲染前;能力:可访问更新后数据,DOM反映旧视图状态;应用:记录滚动位置、保存当前表单状态;注意:禁止修改响应式数据,避免无限循环应用:根据新DOM调整第三方库、触发动画效果;注意:谨慎操作数据,易导致递归更新beforeUnmountunmounted时机:实例销毁完成后;能力:所有绑定已解除,this.$el为null;应用:记录销毁日志、释放非响应式资源;注意:无法再访问实例数据或方法时机:实例销毁前;能力:仍可访问响应式数据和DOM节点;应用:移除事件监听、清除定时器、取消网络请求;注意:避免修改数据或触发新渲染2.2.2
生命周期钩子函数2.3数据绑定…Mustache双大括号语法最简单常用的数据绑定方法,{msg]标签被替代为响应式对象值数据改变时插值处内容自动更新示例:Message:{msg}j执行一次性插值,数据改变后内容不更新V-once指令适用于静态内容场景示例:不会改变:{msg]j响应式验证在控制台修改vm.msg的值,页面文字立刻更新体现了Vue3响应式系统的数据驱动视图特性Mustache实现响应式绑定,V-once实现一次性渲染2.3.1文本插值JavaScript表达式支持v-html指令与v-bind指令v-html:输出真正的HTML内容,span内容被替换为原始HTML支持的表达式:{{number+1}}算术运算{ok?"YES":"NO"}三元表达式{{message.split(").reverse().join(")}方法链调用注意:v-html忽略Vue数据绑定,不能用于组合局部模板v-bind:绑定HTML属性,语法v-bind:id=""list-"+id"字符串拼接v-bind:id="dynamicld"不支持:语句(如vara=1)、流控制(如布尔attribute:值为null/undefined/false时属性不渲染if语句)每个绑定只能包含单个表达式示例:v-bind:disabled="isButtonDisabled"表达式在所属实例作用域下作为JavaScript语句被解析2.4案例登录页面实现通过createApp创建Vue实例,data返回页面文本数据使用Mustache语法绑定标题、标签等文本内容页面结构包含登录标题区、用户名输入框、密码输入框功能项包含记住我复选框、忘记密码链接、登录按钮data选项必须为函数,返回普通Jav
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 专升本真题语文笔记(最终版)
- 2026中国口腔种植体国产化进程与高端市场竞争格局预测报告
- 2026全球工业机器人核心零部件技术演进与市场前景预测报告
- 2026商用航空行业市场现状供需分析及投资评估规划分析研究报告
- 2026中国医用高分子材料研发突破与产业化进程报告
- 2026中国塑料注塑机行业市场需求与发展前景深入分析研究完整
- 2026中国智能假肢矫形器行业市场现状供需分析及投资评估规划分析研究报告
- 2026中国体育营销行业市场现状供需分析及投资评估规划分析研究报告
- 2026中国智能家居设备行业市场发展潜力应用前景及投资策略规划分析报告
- 2026中国显示行业投融资热点领域与估值逻辑变化
- 2024版人教版初中语文九上名著《唐诗三百首》复习题
- GB/T 17623-2026绝缘油中溶解气体组分含量的气相色谱测定法
- 2026广东珠海市斗门区招聘公办中小学教师134人(编制)考试参考试题及答案解析
- 广西壮族自治区梧州市2026年高三第一次模拟考试物理试卷(含答案解析)
- 2026广州医药集团有限公司春季校园招聘笔试历年典型考点题库附带答案详解
- 上海市二级注册建造师继续教育(建筑工程)考试题库
- (2025年)市场监管法律知识复习试题考前模拟测试题附答案
- 新疆建设工程消防设计审查、验收常见问题技术解析(2024年)
- pe管道顶管施工方案
- 《DLT 1231-2018电力系统稳定器整定试验导则》专题研究报告深度
- VTE预防护理管理
评论
0/150
提交评论