• Vue2.0+Vue3.0复习


    持续更新思维导图

    最近开始复习vue,在某b站看到一个不错视频,跟着撸一遍。

    链接:001_尚硅谷Vue技术_课程简介_哔哩哔哩_bilibili

    以下是学习记录笔记和相关代码:

    代码仓库链接https://github.com/xiaoli0510/vue

    20221124:P1-P7:

    1. 初识Vue:
    2. 1.想让Vue工作,必须创建一个Vue实例,且要传入一个配置对象;
    3. 2.root容器里的代码依然符合html规范,只不过混入了一些特殊的Vue语法;
    4. 3.root容器里的代码被称为【Vue模板】;
    5. 4.Vue实例和容器是一一对应的;
    6. 5.真实开发中只有一个Vue实例,并且会配合着组件一起使用;
    7. 6.{{xx}}中的xx要写js表达式,且xx可以自动读取到data中的所有属性;
    8. 7.一旦data中的数据发生改变,那么模板中用到的数据的地方也会自动更新;
    9. js表达式和js代码(语句):
    10. 1.表达式:一个表达式会产生一个值,可以放在任何一个需要值得地方;
    11. (1).a
    12. (2).a+b
    13. (3).demo(1)
    14. (4).x===y?'a':'b'
    15. 2.js代码(语句)
    16. (1).if(){}
    17. (2).for(){}
    18. 模板语法:
    19. Vue模板语法有2大类:
    20. 1.插值语法:
    21. 功能:用于解析标签体内容;
    22. 写法:{{xx}},xx是js表达式,且可以直接读取到data中的所有属性;
    23. 2.指令语法:
    24. 功能:用于解析标签(包括:标签属性、标签体内容、绑定事件...);
    25. 举例:v-bind:href="xx"可简写成:href="xx",xx是js表达式,且可以直接读取到data中的所有属性;

    20221124:P8-P9:

    1. Vue中有2种数据绑定的方式:
    2. 1.单向绑定(v-bind):数据只能从data流向页面。
    3. 2.双向绑定(v-model):数据不仅能从data流向页面,还可以从页面流向data。
    4. 备注:
    5. 1.双向绑定一般都应用在表单类元素上(如input、select等)。
    6. 2.v-model:value可以简写为v-model,因为v-model默认收集的就是value值。
    7. el与data的两种写法
    8. 1.el有2种写法
    9. (1).new Vue时配置el属性。
    10. (2).先创建Vue实例,随后再通过vm.$mount('#root')制定el的值。
    11. 2.data有2种写法
    12. (1)对象式。
    13. (2)函数式。
    14. 目前用两种都可以,后续使用组件时,需使用函数式,否则会报错
    15. 3.一个重要的原则
    16. Vue管理的函数,一定不要写箭头函数,一旦写了箭头函数,this就不再指向Vue实例。

    20230504:P10:

    1. MVVM模型:
    2. 1.M:模型(Model):data中的数据;
    3. 2.V:视图(View):模板代码;
    4. 3.MV:视图模型(ViewModel):Vue实例;
    5. vue中的MVVM特点:
    6. 1.data中的所有属性,最后都出现在vm身上;
    7. 2.vm身上所有的属性,及Vue原型上所有属性,在Vue模板中都可以直接使用;

    20230504:P11-P13:

    1. Object.defineProperty
    2. 1.value:设置值;
    3. 2.enumerable:控制属性是否可枚举,默认是false
    4. 3.writable:控制属性是否可改,默认是false
    5. 4.configurable:控制属性是否可删除,默认是false
    6. 5.get:getter:当读取xx属性时,会触发;
    7. 6.set:getter:当修改xx属性时,会触发;
    8. 数据代理:通过一个对象代理对另外一个对象中属性的读写操作
    9. 数据代理
    10. 1.Vue中的数据代理:
    11. 通过vm对象来代理data对象中所有属性的读写操作;
    12. 2.优点:
    13. 方便操作data中的数据;
    14. 3.基本原理:
    15. 通过Object.defineProperty将data中的属性添加到vm上;
    16. 为每个添加到vm上的属性,都指定一个getter/setter;
    17. 在getter/setter内部去操作data中对应的属性;

    20230504:P14-P16:

    1. 事件的基本使用:
    2. 1.使用v-on:xxx或者@xxx绑定事件,xxx是事件名字;
    3. 2.事件的回调需配置在methods对象中,最终会在vm上;
    4. 3.methods中配置的函数,不要用箭头函数,否则this指向window;
    5. 4.methods中配置的函数,都是Vue所管理的函数,this的指向是vm或组件实例对象;
    6. 5.@click="demo"和@click="demo(event)"效果一致,但后者可传参;
    7. 事件修饰符:
    8. 1.prevent:阻止默认事件
    9. 2.stop:阻止事件冒泡
    10. 3.once:事件只触发一次
    11. 4.capture:使用事件的捕获模式;
    12. 5.self:只有event.target是当前操作的元素时才触发;
    13. 6.passive:事件的默认行为立即执行,无需等待事件回调执行完毕;在wheel事件中使用,或者移动端使用。
    14. 键盘事件
    15. 1.Vue中常用的按钮别名:
    16. 回车:enter;
    17. 删除:delete;
    18. 退出:esc
    19. 空格:space
    20. 换行:tab
    21. 上:up
    22. 下:down
    23. 左:left
    24. 右:right
    25. 2.Vue未提供别名的按键,可使用按键原始值去绑定,需使用caps-lock命名;
    26. 3.系统修饰符(用法特殊):ctrl、alt、shift、meta;
    27. a.配合keyup使用:按下修饰符的同时,再按下其它键,随后释放其它键,事件才被触发。
    28. b.配合keydown使用:正常触发事件。
    29. 4.使用keyCode去指定具体的按键(不推荐);
    30. 5.Vue.config.keyCodes自定义键名=键码,自定义按键别名;

    20230505:P21-P24:

    1. 计算属性:
    2. 1.定义:要用的属性不存在,需要通过已有属性计算得来;
    3. 2.原理:Object.defineProperty提供的getter/setter;
    4. 3.get函数什么时候执行:
    5. a:初次读取时会执行一次;
    6. b:当依赖的数据发生改变时会再次执行;
    7. 4.优点:内部有缓存机制,能复用,效率更高,调试方便;
    8. 5.备注:
    9. a:计算属性最终会出现在vm上,直接读取使用即可,不用在后面添加();
    10. b:如果计算属性要被修改,需要写set函数,且set中要修改计算时所依赖的属性;
    11. 计算属性两种写法:
    12. 1.配置对象,get和set函数;
    13. 2.不需setter函数时,简写成函数;

    20230505:P18-P25:

    1. 监视属性:可监视data里面或者computed里面的属性;
    2. 监视属性两种写法:
    3. 1.watch方法;
    4. 2.vm.$watch方法;
    5. 监视属性简写:
    6. 1.不需配置immediate和deep属性时,可简写;
    7. 2.回调函数不要用箭头函数,箭头函数里面的this指向window;
    8. watch和computed区别:
    9. 1.computed能完成的功能,watch都可以完成;
    10. 2.watch能完成的功能,computed不一定能完成。因为watch里面能处理异步,computed里面不能处理异步;
    11. 两个重要的小原则:
    12. 1.Vue管理的函数,不要写箭头函数,这样this指向vm或组件实例对象;
    13. 2.不被Vue管理的函数(定时器的回调函数、ajax的回调函数、Promise的回调函数),最好写箭头函数,这样this指向vm或组件实例对象;

    20230531:P26:

    1. 绑定样式的三种方式:
    2. 1.字符串写法,适用于:样式的类名不确定,需要动态指定
    3. 2.数组写法,适用于:要绑定的样式个数不确定、名字也不确定
    4. 3.对象写法,适用于:要绑定的样式个数不确定、名字也不确定,且需要动态指定

  • 相关阅读:
    基于keras的疫情预测模型的设计与实现
    初始Cpp之 八、类和对象
    【微服务】SpringCloud的OpenFeign与Ribbon配置
    centos下安装mysql8版本
    MySQL 备份策略详解:完全备份、增量备份和差异备份(InsCode AI 创作助手)
    Games101笔记-计算机图形学概述
    有点奇怪!访问目的网址,主机能容器却不行
    MyBioSource 多巴胺受体 D1 (DRD1),多克隆抗体方案
    Adobe Acrobat PDF 2024
    最新解决谷歌翻译无法使用的教程
  • 原文地址:https://blog.csdn.net/xiaoxiaoluckylucky/article/details/128026760