首页 > 其他分享 >vue 中watch 回调函数和methos中方法的区别

vue 中watch 回调函数和methos中方法的区别

时间:2022-10-28 18:11:39浏览次数:52  
标签:searchkey vue last methos watch throttle now

1.vue 中代码

<el-input v-model="searchkey" placeholder="键名" @input="handleInput" clearable style="max-width:300px;"></el-/utils/commonwen文件加下

export function _throttle(fn,wait = 300){
  let last,now
  console.log("last111111111:",last)
  return function(){
    console.log("last:",last)
    now = new Date().getTime()
    if(last && now -last < wait){
      last = now
    }else{
      last = now
      fn.call(this,...arguments)
    }
  }


vue 页面中
import { _throttle } from '@/utils/common' 
methods:{
/*********使用这种方式调用每次都会打印 last111111111111***********/ handleInput () { _throttle(()=>{ this.getList() })() }
}
 watch: {      /************使用这种方式第一次页面刷新的时候会调用last11111111,改变 searchkey 只会打印last **********************/      searchkey:_throttle(function(){        console.log('22222222222')        this.getList()      })   }

  2.综上:
 watch 定义的时候函数已经定义,后面改变searchkey的值只会改变定义过函数内的内容

标签:searchkey,vue,last,methos,watch,throttle,now
From: https://www.cnblogs.com/moon-yyl/p/16836991.html

相关文章

  • vue 封装带图标的标题组件
    效果图: com-item-title.vue组件<template><divclass="com-item-title"><divclass="com-item-boxflex-center-center"><divclass="com-item-cont">......
  • vuex和浏览器【sessionStorage,localStorage ..】 得区别
    1.Vuex的主要作用是用来共享和管理数据,那为什么不直接使用浏览器缓存呢?2.Vuex和浏览器缓存策略的根本区别是什么?3.Vuex,state仓库中的数据流是单向同步的,那为什么可以在act......
  • vue中的计算属性
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><metahttp-e......
  • 16_Vue列表渲染中key的工作原理和虚拟DOM对比算法
    key的作用粗略的讲,key的作用就是给节点设置一个唯一的标识就像我们人类社会中,每个人的身份证号一样在大部分对key要求不是很严格的场景下,使用index作为key是没问......
  • 13_Vue中的计算属性
    需求两个输入框下方一个全名要求输入框内容发生变化的时候,全名也跟着变化用计算属性很快能写出来,我们先用插值语法和methods配置项完成methods和插值语法方法1使......
  • uniapp开发使用 web-view APP 与 H5 (vue)通信
    需求:这边是uniapp开发的APP 需要内嵌H5(vue),就得使用web-view跳转网页H5端在vue的index,html文件引入web-view的插件<scripttype="text/javascript"src="https://js......
  • 14_Vue监视属性
    顾名思义,监视一个属性的变化需求按照之前案例,isHot的值发生改动的时候我需要知道这件事,isHot发生改变,就需要通知我watchkey值:你想监视的属性名(data配置项中的isHot......
  • 创建使用Ant的vue项目时遇到的问题
    一、成功运行后vue版本   二、创建中遇到的问题    1、开始创建项目时,vue、ant、webpack(8.15.0)都是高版本,ant1.7.8版本的代码不能适用(需求为:学习ant1.......
  • vue 中的键盘事件
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><metahttp-e......
  • vue数据值变了,但是input视图没有更新怎么办?
    直接给对象的属性赋值,并不能使得视图发生变化,此时我们可以用vue的$set方法来赋值解决这个问题this.$set(对象,'属性名','属性值')使用这段代码给对象赋值this.$set......