TS 下全局搜索 如何实现 新的方法是什么 有了解的小伙伴吗
来源:5-13 全文搜索功能实现(搜索算法+数组降维)
亚麻布
2022-07-15
在 js 版的epubjs 中可以通过以下代码进行全局搜索,如果只有一个匹配项的话 自动跳转到位置
currentChange: function (sitem) {
var that = this;
that.book.spine.spineItems.map(function (item) {
var tmpArray = item.find(sitem.label)
if (tmpArray.length == 1) {
that.display(tmpArray[0].cfi)
//that.refreshLocation(true);
}
})
}
现在我用了typeScript 的版本 在ts 版下 进行全局搜索该如何实现
已实现
关键代码
rendition = _book.renderTo("EpubRead", {
width: "100%",
height: "800px", // 这里一定要是一个具体的高度
manager: "continuous",
flow: "scrolled",
snap: true,
allowScriptedContent: true
})
let scrollToEditorElem = (sitem: any) => {
//这里要注意搜索内容 有空格的情况(暂未解决)
//只能把_book 转为any 好坑
(_book as any).spine.spineItems.map(function (item: any) {
var tmpArray = item.find(sitem.BookmarkTitle)
if (tmpArray.length == 1) {
rendition.display(tmpArray[0].cfi)
//refreshLocation();
}
})
}
写回答
2回答
-
亚麻布
提问者
2022-08-02
发现是搜索的内容中有空格...(我的测试搜索内容中刚好有空格) 现在又来个更严重的 display 指定位置 无效
012022-08-02 -
扬_灵
2022-07-18
同学你好,首先得看一下ts支不支持epubjs,如果支持的话应该写法差不多
012022-07-20
相似问题