Vue 使用lodash库减少watch对后台请求压力

lodash需要新引入

我使用的是npm方式

使用lodash的_.debounce方法

具体代码:

doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>vue.js 使用lodash库减少watch对后台请求压力 title>
    <script src="vue.js">script>
    <script src="node_modules/axios/dist/axios.js">script>
    <script src="node_modules/lodash/lodash.js">script>
head>
<body>
<div id="ask">
    <input type="text" v-model="word">
    <h1>{{result}}h1>
div>
<script>
    var app = new Vue({ //实例化vue
        el:'#ask',//vue控制id为ask的元素,
        //watch 可以监听多个变量
        watch:{
            //监听word变量
            word:_.debounce(function (newV,oldV) {
                console.log('旧值:'+oldV+'=======>新值:'+newV);
                //这里可以写异步请求我用的是axios
                axios.get('Api.php?word='+newV).then(function (res) {
                    console.log(res,'这是异步返回的值');
                    //这里写异步得到值之后的动作
                    app.result=res.data;
                });
            },3000)
        },
        data:{
            word:'',
            result:''

        }
    });
script>
body>
html>

 

你可能感兴趣的:(Vue 使用lodash库减少watch对后台请求压力)