Vue笔记

一、Vue 简介

渐进式 JavaScript 框架

  • 易用 html css javascript
  • 高效 开发前端页面 非常高效
  • 灵活 开发灵活 多样性

Vue 是渐进式 javascript 框架: 让我们通过操作很少的 DOM,甚至不需要操作页面中任何 DOM 元素,就很容易的完成 数据和视图绑定、双向绑定 MVVM。

下载 Vue

开发版本:

生产版本:

二、Vue 基础语法

总结:

  • Vue 实例对象中 el 属性:代表 Vue 的作用范围,在 Vue 的作用范围内都可以使用 Vue 的语法。
  • Vue 实例对象中 data 属性:用来给 Vue 实例绑定一些相关数据,绑定的数据可以通过 {{ xx }} 在 Vue 作用范围内取出。
  • 在使用 {{ xx }} 进行获取 data 中数据时,可以在 {{ }}中书写表达式、运算符、调用相关方法以及逻辑运算等。
  • el 属性中可以书写任意的 CSS选择器[jquery选择器],但是在使用 Vue 开发推荐使用 id选择器。

v-text:显示文本

v-text:用来获取 data 中数据将数据以文本的形式渲染到指定标签内部,类似于 javascript 中 innerText

{{ xx }}(插值表达式)和 v-text 获取数据的区别在于:

  • 使用 v-text 取值会将标签中原有的数据覆盖
    插值表达式的形式不会覆盖标签原有的数据。
  • 使用 v-text 可以避免在网络环境较差的情况下出现插值闪烁。(已修复)

v-html:显示解析html标签的文本

v-html:用来获取 data 中数据将数据中含有的 html 标签先解析在渲染到指定标签的内部,类似于 javascript 中 innerHTML

v-on:事件绑定

v-on:事件绑定

  • v-on:click 可以简化成 @click
  • 事件函数可以简写,dowork: function() {} 可以简写成 dowork() {}

v-show:控制页面元素隐藏与显示(display控制)

v-show:用来控制页面中某个标签元素是否展示,底层通过控制元素的 display 属性来进行标签的显示和不显示控制。

  • v-show 中可以直接书写 boolean 值控制元素展示
  • v-show 中可以通过 变量 控制标签展示和隐藏。
  • v-show 中可以通过 boolean表达式 控制标签的展示和隐藏。

v-if:控制页面元素隐藏与显示(dom操作)

v-if:用来控制页面中的标签元素是否展示,底层通过对 dom 树节点进行添加和删除来控制展示和隐藏。

v-bind:绑定标签的属性

v-bind:用来绑定 标签的属性 从而通过 vue 动态修改标签的属性。

  • v-bind : 属性 可以简写成 : 属性

v-for:遍历对象

v-for:用来对 对象 进行遍历的(JavaScript 中数组也是对象的一种)

  • 在使用 v-for 的时候一定要注意加入:key 用来给 Vue 内部提供重用和排序的唯一 key
  • 遍历时可以获取 索引 index、…

v-model:实现双向绑定

v-model:用来绑定 标签元素的值vue实例对象中data数据 保持一致,从而实现 双向的数据绑定机制

  • 所谓双向绑定,就是表单中数据变化导致 vue 实例 data 数据变化,vue 实例中 data 数据的变化导致表单中数据变化。

MVVM 架构 双向绑定机制
Model:数据 Vue实例中绑定数据
View:页面 页面展示的数据
VM:ViewModel 监听器

事件修饰符

修饰符作用:用来和事件连用,决定事件触发条件或者是阻止事件的触发机制。

常用的事件修饰符:

  • .stop:用来阻止事件冒泡。
  • .prevent:用来阻止标签的默认行为。
  • .capture
  • .self:只触发自己标签的上特定动作的事件,不监听事件冒泡。
  • .once:让指定事件只触发一次。
  • .passive

按键修饰符

作用:用来与键盘中按键事件绑定在一起,用来修饰特定的按键事件的修饰符。

常用按键修饰符:@keyup.xxx="function "

三、Axios 基本使用

参考中文网站:https://www.kancloud.cn/yunye/axios/234845

四、Vue 生命周期

生命周期钩子 ====> 生命周期函数

在这里插入图片描述

methods: {
        changeData() {
          // this.msg = "Vue.js niubility!";
          this.msg = Math.random();
        }
      },
      // ====================初始化阶段====================
      // 1.生命周期中第一个函数,该函数在执行时Vue实例仅仅完成了自身事件的绑定和生命周期函数的初始化工作,Vue实例中还没有 Data el methods相关属性
      beforeCreate() {
        console.log("beforeCreate: " + this.msg);
      },
      // 2.生命周期中第二个函数,该函数在执行时Vue实例已经初始化了data属性和methods中相关方法
      created() {
        console.log("created:" + this.msg);
      },
      // 3.生命周期中第三个函数,该函数在执行时Vue将El中指定作用范围作为模板编译
      beforeMount() {
        console.log("beforeMount: " + document.getElementById("sp").innerText);
      },
      // 4.生命周期中第四个函数,该函数在执行过程中,已经将数据渲染到界面中并且已经更新页面
      mounted() {
        console.log("Mounted: " + document.getElementById("sp").innerText);
      },
      // ====================运行阶段====================
      // 5.生命周期中第五个函数,该函数是data中数据发生变化时执行 这个事件执行时仅仅是Vue实例中data数据变化页面显示的依然是原始数据
      beforeUpdate() {
        console.log("beforeUpdate-vue: " + this.msg);
        console.log("beforeUpdate-dom: " + document.getElementById("sp").innerText);
      },
      // 6.生命周期中第六个函数,该函数执行时data中数据发生变化,页面中数据也发生了变化  页面中数据已经和data中数据一致
      updated() {
        console.log("updated-vue: " + this.msg);
        console.log("updated-dom: " + document.getElementById("sp").innerText);
      },
      // ====================销毁阶段====================
      // 7.生命周期第七个函数,该函数执行时,Vue中所有数据 methods componet 都没销毁
      beforeDestory() { },
      // 8.生命周期的第八个函数,该函数执行时,Vue实例彻底销毁
      destoryed() { }
    });

五、Vue 组件(Component)

组件作用:用来减少 Vue 实例对象中代码量,日后在使用 Vue 开发过程中,可以根据不同业务功能将页面中划分不同的多个组件,然后由多个组件去完成整个页面的布局,便于日后使用 Vue 进行开发时页面管理,方便开发人员维护。

全局组件的开发

全局组件注册给 Vue 实例,可以在任意 Vue 实例的范围内使用该组件。

局部组件的开发

通过将组件注册给对应 Vue 实例中一个 components 属性来完成组件注册,这种方式不会对 Vue 实例造成累加。

组件中 props 的使用

props 用来给组件传递相应静态数据或者是动态数据;

props 的单向数据流

所有的 props 都使得其父子 props 之间形成了一个单向下行绑定:父级 props 的更新会向下流动到子组件中,但是反过来则不行。这样会防止从子组件意外改变父级组件的状态,从而导致你的应用的数据流向难以理解。

额外的,每次父级组件发生更新时,子组件中所有的 props 都将会刷新为最新的值。这意味着你不应该在一个子组件内部改变 props。如果你这样做了,Vue 会在浏览器的控制台中发出警告。—摘自官网

参考资料:【编程不良人】适用于后端编程人员的Vue实战教程,整合SpringBoot项目案例、已完结!_哔哩哔哩_bilibili

https://blog.csdn.net/weixin_43734095/article/details/106043517

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值