laravel - 限速自由文本搜索

标签 laravel laravel-5 vue.js vuejs2

我在我的应用程序前端使用 VueJS,在后端使用 Laravel。使用自由文本搜索减少对服务器调用的最佳位置在哪里?

搜索输入“你好”

@keyup 将发出 5 个服务器请求

1st = h
2nd = he
3rd = hel
4th = hell
5th = hello

理想情况下,我希望能够停止服务器请求,直到用户停止键入或延迟击键。这样我每次搜索时只会向服务器发送 1 或 2 个请求。

最佳答案

我解决这个问题的方法是让请求超时,每次按下另一个键时,重置超时。
这使得只有在一定时间内没有击键时才会完成请求。

function keyPressed() {

    if (window.ajaxtimeout)
        clearTimeout(window.ajaxtimeout);

    window.ajaxtimeout = setTimeout(function () {

        // Ajax request

    }, 300);

};

此示例将在两次击键之间等待 300 毫秒,然后再发送 ajax 请求。我发现这是一个很好的值(value)。

关于laravel - 限速自由文本搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45735117/

相关文章:

php - laravel echo 与 redis 和 socket io

php - Laravel 5 模型中带有查询的自定义方法

vue.js - 如何在 vuejs 自定义指令中传递动态参数

javascript - Vue Js v 绑定(bind) :class syntax not working ?

laravel - PhpStorm。禁用 CSS 代码样式格式

javascript - 使用ajax调用更新数据库onclick

linux - Laravel(在 Linux、EC2 上)路由不起作用

php - Laravel 与数据表 : searching encrypted data

laravel - 将用户 ID 附加到帖子 (Laravel 5.3)

javascript - Vee-validate Validate on blur 防止表单提交