vue2知识点1 ———— (vue指令,vue的响应式基础)

vue2的知识点,更多前端知识在主页,还有其他知识会持续更新

Vue 指令

Vue指令是Vue.js中的一个重要概念,用于向DOM元素添加特定行为或功能。Vue指令以v-开头,例如v-bindv-ifv-for等。

v-bind

动态绑定属性

用法: v-bind:属性名=“vue变量” 简写 :属性名=“vue变量”

<img v-bind:src="imageSrc">

v-on

给元素绑定事件监听器

用法:v-on:已定义的函数方法(实参) 简写 : @事件名=“函数”

修饰符:.stop:阻止事件冒泡   .prevent 阻止默认行为  .once 程序运行期间,只触发一次

<button v-on:click="handleClick">点击我</button>

v-model 在表单输入元素或组件上创建双向绑定

用于实现双向数据绑定,将表单元素的值与Vue实例中的数据进行关联。例如,将输入框的值与message数据进行双向绑定:

范围:<input>   <select>  <txttrea>  <components>

用法:<input v-model="属性名">  // 复选框的值为数组  单选值为布尔值

修饰符:.lazy 编辑完成后才更新数据     .number 将字符串数字转成number数字   .trim 消除字符两端的空格

<input type="text" v-model="message">

v-text 插值表达式 用于设置元素的部分内容

用法: <span v-text="span"></span>  = <span>{{span}}</span> 

容使用后在其中插值 无视所插的值

v-html 与v-text意义相同

用法:<div v-html="html"></div>   html可以是HTML格式 可以自动编译

同样无视所插入的值

v-show  改变display css属性来工作   ps:频繁切换使用

用法:<div v-show="属性名"></div>    

与v-if不同之处:v-show 会在dom渲染中保留该元素 仅切换了元素上display

v-show 不支持在 <template> 元素上使用 也不能喝 v-else 搭配使用

v-if  直接从dom上移除

用法:<div v-if="vue变量"></div>

<div v-if="isShow">显示内容</div>
<div v-show="isShow">显示内容</div>

v-for 基于基础数据多次渲染元素或模块

用法:<div v-for="(item,key) in 数据" key="key"></div>

数据绑定类型:Array | object | Number | Iterable

<ul>
  <li v-for="item in items">{{ item }}</li>
</ul>

vue的响应式基础

Vue2的响应式基础是指Vue框架中实现数据双向绑定的核心机制。在Vue2中,当数据发生变化时,视图会自动更新,反之亦然。这种实现是通过Vue的响应式系统来实现的。

Vue2的响应式基础主要包括以下几个方面:

  1. 数据劫持:Vue2通过Object.defineProperty()方法来劫持数据对象的属性,使得当属性被读取或修改时,可以触发相应的更新操作。

  2. 依赖追踪:Vue2通过Watcher对象来追踪数据对象的依赖关系,当数据发生变化时,会通知相关的Watcher对象进行更新操作。

  3. 派发更新:当数据发生变化时,Vue2会通过触发更新函数来更新相关的视图。

  4. 异步更新:Vue2通过nextTick()方法实现异步更新,将多个数据变化合并为一次更新操作,提高性能。

总的来说,Vue2的响应式基础通过数据劫持、依赖追踪、派发更新和异步更新等机制实现了数据与视图的双向绑定,使得开发者可以更加方便地管理和操作数据,提高了开发效率和用户体验。

选用选项式API时,会用 data 选项来声明组件的响应状态。此选项的值返回一个对象函数

vue将在创建新组件实例的时候调用此函数

声明属性

这些实例上的属性仅在实例首次创建时添加

声明方法

Methods 是一个包含所有方法的对象,在此你可以定义方法

不能用监听函数,vue自动为methods 中的方法绑定永远指向组件实例的this

DOM更新时机

当你改变响应式状态,DOM也会自动更新,然而,你得注意DOM的更新并不是同步的,无论你进行了多少次声明,每个组件都只需要更新一次

若要等待一个状态改变的dom跟新完成,可以使用nextTick()这个全局API

vue的计算属性

在Vue中,计算属性是指在模板中可以直接使用的属性,它们的值是通过对其他数据进行计算得到的。计算属性的值是基于它们的依赖缓存的,只有在依赖发生变化时才会重新计算,这样可以提高性能。

计算属性的定义方式如下:

new Vue({
  data: {
    message: 'Hello, Vue!'
  },
  computed: {
    reversedMessage: function() {
      return this.message.split('').reverse().join('');
    }
  }
})

在上面的例子中,reversedMessage是一个计算属性,它依赖于message属性。当message发生变化时,reversedMessage会重新计算并更新视图。

计算属性的特点包括:

  1. 缓存:计算属性的结果会被缓存,只有在它的依赖发生改变时才会重新计算。这样可以避免不必要的计算,提高性能。

  2. 响应性:计算属性会自动响应数据的变化,当依赖的数据发生改变时,计算属性会自动重新计算并更新相关的视图。

  3. 懒加载:计算属性只会在模板中使用时才会计算,如果没有使用则不会计算,这样可以节省性能。

  4. 可以依赖多个数据:计算属性可以依赖于多个数据,只要其中任何一个数据发生变化,计算属性就会重新计算。

总的来说,计算属性是Vue中一种非常方便的机制,可以帮助开发者简化模板中的逻辑,提高代码的可维护性和性能。通过合理使用计算属性,可以更加高效地处理数据和更新视图。

格式:

computed: {

    "计算属性名" () {

        return "值"

    }

}

可写式计算属性

computed: {

    "属性名": {

        set(值){

           

        },

        get() {

            return "值"

        }

    }

}

相关推荐

  1. Vue基础2响应基础

    2024-04-21 16:54:04       10 阅读
  2. vue响应基础

    2024-04-21 16:54:04       14 阅读
  3. Vue3---基础4(响应数据) Vue2

    2024-04-21 16:54:04       15 阅读
  4. Vue3前端 响应数据 知识

    2024-04-21 16:54:04       32 阅读
  5. vue基础知识

    2024-04-21 16:54:04       10 阅读
  6. vue2vue 3 响应原理

    2024-04-21 16:54:04       6 阅读
  7. vue2响应vue3响应

    2024-04-21 16:54:04       11 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-21 16:54:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-21 16:54:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-21 16:54:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-21 16:54:04       20 阅读

热门阅读

  1. 科目一笔记

    2024-04-21 16:54:04       18 阅读
  2. iOS知识点---Runloop

    2024-04-21 16:54:04       16 阅读
  3. P1990 覆盖墙壁

    2024-04-21 16:54:04       12 阅读
  4. Spring-Aop源码解析(中)

    2024-04-21 16:54:04       16 阅读
  5. ubuntu 22.04 -- cmake安装

    2024-04-21 16:54:04       13 阅读
  6. centos安装服务及设置自启动

    2024-04-21 16:54:04       13 阅读
  7. 产品经理常用工具汇总

    2024-04-21 16:54:04       14 阅读
  8. 网银快捷支付接口怎么申请!

    2024-04-21 16:54:04       11 阅读
  9. DNS的背景工作原理和作用

    2024-04-21 16:54:04       14 阅读
  10. webpack源码分析——enhanced-resolve库之cdUp函数

    2024-04-21 16:54:04       13 阅读