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

Posted tommymarc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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"><!--vue不能控制body和html的标签-->
    <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对后台请求压力的主要内容,如果未能解决你的问题,请参考以下文章

Vue移动端项目——搜索联想建议功能的实现(结合watch属性和使用lodash防抖节流)

Vue中使用节流Lodash throttle

Vue watch[胖箭头范围]提供了错误的上下文[重复]

如何正确使用带有 lodash debounce 的 Vue JS 手表

vue实战使用ajax请求后台数据(小白)

Vue.js 内联编辑组件在保存前按 lodash 排序