如何使用特定单词在Firebase实时数据库中进行搜索

时间:2019-11-28 11:56:32

标签: javascript firebase search firebase-realtime-database

数据库结构如下图所示 enter image description here

我使用了以下搜索查询,该查询按子项startAt和endAt进行排序。现在我面临的主要问题是,如您在照片中所看到的,名称键包含值“ h.k dass的高级工程数学” 我想让用户按值搜索,例如,您将在搜索栏中输入Advance,它将列出该子项,但主要问题是它与短语匹配。 我想做的是,如果用户输入Engineering或该短语中的任何其他单词,则应列出该子项,但在我的情况下,仅当您完整地输入短语或按顺序排列该子句时,该子项才会出现。就像它会列出如果您编写高级,高级工程,高级工程数学,但不会列出如果您只是编写工程。

   database.ref('electrical_all').orderByChild(searchCat).startAt(searchBox).endAt(`${searchBox}\uf8ff`).on("child_added", function (data) {
    if(data.exists()) {
    document.getElementById("searchItem").innerHTML = `<b> You Searched For : </b>  ${searchBox} <br/> <h5> List Displayed Below </h5>`;   
    console.log(data.val(), data.key);
    var row = generateRow(data.val(), data.key);
    table.innerHTML += row;
    }

0 个答案:

没有答案