2017-08-17 19 views
0

我有一个搜索器在离子过滤食品名称的名单。它由离子搜索栏和虚拟滚动条制成。如何去做一个在ionic3和firebase中的itemsearch栏

剩下的唯一问题是,我不知道将我的2000多个食品产品名称添加到我的应用程序中的最佳做法。我已经在firebase中寻找MySQL'like'函数,但是如果不使用付费版本的弹性搜索,IT就不存在。我想知道还有其他选择。我是否可以将2000个物品的整个清单作为可观察物品放入我的应用程序中?它可能打到3000个项目,但不是更多。或者还有其他选择吗?

谢谢!

回答

0

我所做的是我用火力点云功能,使用我通过一个HTTP请求中的值来搜索我的数据库,像这样的NodeJS:

exports.getFoodnames = functions.https.onRequest((request, response) => { 
    cors(request, response,() => { 
    const ref = admin.database().ref('foodnames'); 
    ref.once('value').then((snapshot)=> { 
     let filtered_items = []; 
     let searchTerm = request.query.search; 

     snapshot.forEach(snap => { 
     if (snap.val().name.indexOf(searchTerm) !== -1) filtered_items.push({ name : snap.val().name, $key: snap.key}); 
     }); 

     response.status(200).send(JSON.stringify(filtered_items)); 
    }); 
    }); 
}); 

希望我可以帮助别人的同时,请让我知道如果上面的代码可以做得更快。