gpt4 book ai didi

javascript - Framework7 虚拟列表 searchAll 函数未使用

转载 作者:行者123 更新时间:2023-12-03 03:36:48 25 4
gpt4 key购买 nike

我正在开发一个 PhoneGap 应用程序,我正在尝试使用 Framework7 的搜索栏来过滤我的虚拟产品列表。

当前的功能是列表工作正常,但搜索栏仅搜索呈现的元素而不是整个虚拟列表。

我已经浏览了framework7的documentation让他们的虚拟列表和搜索栏一起工作,但据我所知,我的代码中的搜索栏完全忽略了我放入的虚拟列表 searchAll 函数。我可以让 searchAll() 返回任何内容,这对当前功能。

    var listObject = {
items: selectProd,
template: '<li class="item-content"><div class="item-inner"><div data-value="{{model_id}}" class="item-title list-title">{{internal_descriptn}}</div></div></li></script>',
searchAll: function (query, items) {
var foundItems = [];
for (var i = 0; i < items.length; i++) {
// Check if title contains query string
if (items[i].title.indexOf(query.trim()) >= 0) foundItems.push(i);
}
// Return array with indexes of matched items
return foundItems;
}
};
console.log(listObject);
var virtualList = myApp.virtualList('#product-list', listObject);
var mySearchbar = myApp.searchbar('.searchbar', {
searchList: '.list-block-search',
searchIn: '.list-title'
});

我觉得我唯一可能缺少的就是将 virtualList 作为属性或类似的方式放入搜索栏中以链接它们,对我来说期望它们像魔术一样一起工作似乎很奇怪。然而,这似乎是文档所暗示的(在我的情况下显然不是这样,或者它会起作用)。感谢您的帮助。

最佳答案

通过查看 example 解决了这个问题在他们的 github 上。乍一看一切都一样,所以我将其复制过来,然后慢慢将其改回来以包含我的数据,以查看问题出现在哪里。由于某些该死的原因,您需要使用类 virtual-list 来识别包含您的列表的父级。然后为您的虚拟列表和搜索栏指定该类。使用不同的名称是行不通的。非常令人沮丧的是,文档中根本没有提到这一点。

关于javascript - Framework7 虚拟列表 searchAll 函数未使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45819150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com