首页 > 其他分享 >Vue3学习(四)

Vue3学习(四)

时间:2022-11-01 10:15:54浏览次数:177  
标签:axios log get Vue3 value 学习 shake any

连接数据库实现数据防抖

shake.js

export function shake(fn,delay){
    let time=null;
    return function(){
        let parameter=arguments;
        if(time){
            clearTimeout(time);
        }
        time=setTimeout(()=>{
            fn.apply(this,parameter);
        },delay)
    }
}

 

index.vue

<template>
    <input type="text" v-model="msg" id="shake" @keyup="input" placeholder="请输入银行卡号码">
    <hr />
    <span>{{ msg.replace(/(\d{4})(?=\d)/g, "$1 ") }}</span>
    <ul v-for="(l,i) in logins" :key="i">
        <li>{{l}}</li>
    </ul>
</template>

<script lang="ts">
import { customRef,ref} from 'vue'
import { shake } from "../views/js/shake.js"
import axios from '../views/axios/axios.min.js'
export default {
    setup() {
        let logins:object=[];
        const input = shake((e: any) => {
            console.log("http://localhost:8082/login/get/"+msg.value);
            axios.get("http://localhost:8082/login/get/"+msg.value)
            .then((response:any)=>{
            console.log(response.data);
            logins=response.data
            console.log(logins)
            }).catch((error:any)=>{
            console.log(error);
            });
        }, 2000)
        
         //自定义响应式函数,指定值为value
         let myRef = function (value: any) {
            return customRef((track, trigger) => {
                return {
                    get() {
                        //通知Vue追踪该变量
                        track();
                        return value;
                    },
                    set(newValue) {
                        //是数字就赋值
                        if (!isNaN(newValue) && newValue.length <= 16) {
                            value = newValue;
                        }
                        trigger();//更新视图
                    }
                }
            })
        };
        let msg = myRef("customRef")
        return { msg, input,logins}
    }

}
</script>

 

标签:axios,log,get,Vue3,value,学习,shake,any
From: https://www.cnblogs.com/zsbb/p/16846746.html

相关文章

  • Vue3学习(五)
    设置全局参数,调用参数三种方法,阻止默认事件,阻止冒泡,capture捕获设置全局参数 main.ts import{createApp}from'vue'importAppfrom'./App.vue'importrouter......
  • Vue3学习(二)
     <template><h1>方法</h1><inputtype="text"v-model="input3"@input="meth()">+<inputtype="text"v-model="input4"@input="meth()">=......
  • Vue3学习(三)
    <template><h2>姓名:{{user.name}}</h2><h2>姓名:{{user.age}}</h2><h2>姓名:{{user.job.salsry}}k</h2><button@click="user.name+='%'">修改姓名</bu......
  • Python学习笔记
    20221031:对比python的列表数组与numpy插件在数据处理效率上的差别,importtime导入了常用的模板,importnumpyasnp导入numpy模块,别名为np。当时在操作时,pycharm没有安装num......
  • node 学习笔记
    1.通过node执行js1.复制文件所在路径2.node+路径2.node读写文件1.引入file模块读取文件2.fs.readFile(‘./read/hell.txt’,function(error,data){if(error){con......
  • 学习python第二天
    ##字符串的操作##tyep查看对象的类型#name="wode"#print(type(name))###常用的类型:strintfloatbool##布尔型:bool##Ture1##flse0#print()#字符串......
  • 深度学习基础课:全连接层的前向和后向传播推导(中)
    大家好~我开设了“深度学习基础班”的线上课程,带领同学从0开始学习全连接和卷积神经网络,进行数学推导,并且实现可以运行的Demo程序线上课程资料:本节课录像回放加QQ群,获得......
  • STM32 USB学习笔记6
    主机环境:Windows7SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library现在来分析哈USB器件库代码,先来看usbd_core文件,其头文件只......
  • 深度学习-yolo-多(单)目标检测
    代码是在吴恩达深度学习作业的基础上完成的。问题1:下载的yolo.h5无法使用开始想原来下载的不行我就换个地方下载呗,就绕到gitlfs去了,然后发现这个条路好像不大行得通......
  • 学习java的第二天
    java语法学习注释,标识符,关键字写代码时一定写注释这是一个良好的习惯单行注释:“//”这是一个当行注释多行注释:"/*+回车"这是一个多行注释文档注释:"/**+......