苏州市城乡和建设局网站赣州网站设计哪家强

张小明 2026/1/2 7:51:01
苏州市城乡和建设局网站,赣州网站设计哪家强,wordpress与Wix对比,网页设计与制作教程第六版第六章源代码欢迎大家加入开源鸿蒙跨平台开发者社区#xff0c;一起共建开源鸿蒙跨平台生态。 全文搜索系统概述 全文搜索功能允许用户快速查找应用中的任何内容。在Cordova框架与OpenHarmony系统的结合下#xff0c;我们需要实现一个高效的搜索系统#xff0c;支持多种搜索类型和过滤选…欢迎大家加入开源鸿蒙跨平台开发者社区一起共建开源鸿蒙跨平台生态。全文搜索系统概述全文搜索功能允许用户快速查找应用中的任何内容。在Cordova框架与OpenHarmony系统的结合下我们需要实现一个高效的搜索系统支持多种搜索类型和过滤选项。搜索引擎数据模型classSearchIndex{constructor(){this.indexnewMap();// 关键词 - 结果数组this.buildIndex();}buildIndex(){// 索引植物plants.forEach(plant{this.addToIndex(plant.name,{type:plant,data:plant});this.addToIndex(plant.species,{type:plant,data:plant});});// 索引分类categoryManager.categories.forEach(cat{this.addToIndex(cat.name,{type:category,data:cat});});// 索引标签tagManager.tags.forEach(tag{this.addToIndex(tag.name,{type:tag,data:tag});});}addToIndex(keyword,result){constkeykeyword.toLowerCase();if(!this.index.has(key)){this.index.set(key,[]);}this.index.get(key).push(result);}search(keyword){constkeykeyword.toLowerCase();constresults[];// 精确匹配if(this.index.has(key)){results.push(...this.index.get(key));}// 模糊匹配for(const[indexKey,indexResults]ofthis.index.entries()){if(indexKey.includes(key)indexKey!key){results.push(...indexResults);}}returnresults;}}这个搜索引擎数据模型定义了SearchIndex类。它建立了一个倒排索引支持精确匹配和模糊匹配。与OpenHarmony搜索服务的集成functionperformFullTextSearch(keyword){cordova.exec(function(result){console.log(搜索完成);renderSearchResults(result);},function(error){console.error(搜索失败:,error);},SearchPlugin,search,[{keyword:keyword,searchTypes:[plants,categories,tags,records],limit:50}]);}functionindexContent(){cordova.exec(function(result){console.log(内容已索引);},function(error){console.error(索引失败:,error);},SearchPlugin,indexContent,[{plants:plants,categories:categoryManager.categories,tags:tagManager.tags}]);}这段代码展示了如何与OpenHarmony的搜索服务集成。performFullTextSearch函数执行搜索indexContent函数建立索引。搜索结果展示functionrenderSearchResults(results){constcontainerdocument.getElementById(page-container);container.innerHTMLdiv classsearch-results-container h2搜索结果/h2 p找到${results.length}个结果/p /div;if(results.length0){container.innerHTMLp classempty-message未找到匹配的结果/p;return;}// 按类型分组结果constgroupedResults{};results.forEach(result{if(!groupedResults[result.type]){groupedResults[result.type][];}groupedResults[result.type].push(result);});// 渲染每个类型的结果Object.keys(groupedResults).forEach(type{consttypeResultsgroupedResults[type];consttypeSectiondocument.createElement(div);typeSection.classNameresult-type-section;typeSection.innerHTMLh3${getTypeLabel(type)}(${typeResults.length})/h3;typeResults.forEach(result{constresultItemdocument.createElement(div);resultItem.classNameresult-item;if(result.typeplant){resultItem.innerHTMLh4${result.data.name}/h4 p物种:${result.data.species}/p p位置:${result.data.location}/p button onclickviewPlantDetails(${result.data.id})查看/button;}elseif(result.typecategory){resultItem.innerHTMLh4${result.data.name}/h4 p${result.data.description}/p button onclickviewCategory(${result.data.id})查看/button;}elseif(result.typetag){resultItem.innerHTMLh4${result.data.name}/h4 p使用次数:${result.data.usageCount}/p button onclickviewTag(${result.data.id})查看/button;}typeSection.appendChild(resultItem);});container.appendChild(typeSection);});}functiongetTypeLabel(type){constlabels{plant: 植物,category: 分类,tag:️ 标签,record: 记录};returnlabels[type]||type;}这个函数负责渲染搜索结果。结果按类型分组展示用户可以快速查看不同类型的搜索结果。搜索页面functionrenderSearchPage(){constcontainerdocument.getElementById(page-container);container.innerHTMLdiv classsearch-page div classsearch-header h2全文搜索/h2 div classsearch-box input typetext idsearch-input placeholder搜索植物、分类、标签... button onclickexecuteSearch() 搜索/button /div /div div classsearch-filters label input typecheckbox idfilter-plants checked 植物 /label label input typecheckbox idfilter-categories checked 分类 /label label input typecheckbox idfilter-tags checked 标签 /label label input typecheckbox idfilter-records checked 记录 /label /div div idsearch-results/div /div;document.getElementById(search-input).addEventListener(keypress,function(e){if(e.keyEnter){executeSearch();}});}functionexecuteSearch(){constkeyworddocument.getElementById(search-input).value;if(!keyword){showToast(请输入搜索关键词);return;}constfilters{plants:document.getElementById(filter-plants).checked,categories:document.getElementById(filter-categories).checked,tags:document.getElementById(filter-tags).checked,records:document.getElementById(filter-records).checked};performFullTextSearch(keyword);}这个函数创建搜索页面包括搜索框和过滤选项。用户可以输入关键词并选择搜索类型。搜索历史管理classSearchHistory{constructor(maxHistory20){this.history[];this.maxHistorymaxHistory;this.loadFromStorage();}addSearch(keyword){// 移除重复的搜索this.historythis.history.filter(hh!keyword);// 添加到开头this.history.unshift(keyword);// 保持历史记录数量在限制内if(this.history.lengththis.maxHistory){this.history.pop();}this.saveToStorage();}getHistory(){returnthis.history;}clearHistory(){this.history[];this.saveToStorage();}}这个SearchHistory类管理用户的搜索历史。用户可以查看之前的搜索并快速重复搜索。搜索建议功能functiongetSearchSuggestions(keyword){constsuggestions[];// 从植物名称获取建议plants.forEach(plant{if(plant.name.toLowerCase().includes(keyword.toLowerCase())){suggestions.push({text:plant.name,type:plant,icon:});}});// 从分类获取建议categoryManager.categories.forEach(cat{if(cat.name.toLowerCase().includes(keyword.toLowerCase())){suggestions.push({text:cat.name,type:category,icon:});}});// 从标签获取建议tagManager.tags.forEach(tag{if(tag.name.toLowerCase().includes(keyword.toLowerCase())){suggestions.push({text:tag.name,type:tag,icon:️});}});returnsuggestions.slice(0,10);// 返回前10个建议}functionrenderSearchSuggestions(suggestions){constsuggestionsListdocument.createElement(div);suggestionsList.classNamesuggestions-list;suggestions.forEach(suggestion{constitemdocument.createElement(div);item.classNamesuggestion-item;item.innerHTMLspan classsuggestion-icon${suggestion.icon}/span span classsuggestion-text${suggestion.text}/span;item.onclick(){document.getElementById(search-input).valuesuggestion.text;executeSearch();};suggestionsList.appendChild(item);});returnsuggestionsList;}这段代码实现了搜索建议功能。当用户输入时系统会显示相关的建议帮助用户快速找到所需内容。搜索统计classSearchStatistics{constructor(searchHistory){this.searchHistorysearchHistory;}getMostSearchedKeywords(limit10){constcounts{};this.searchHistory.history.forEach(keyword{counts[keyword](counts[keyword]||0)1;});returnObject.entries(counts).sort((a,b)b[1]-a[1]).slice(0,limit).map(([keyword,count])({keyword,count}));}getSearchTrends(){returnthis.searchHistory.history.slice(0,20);}}这个SearchStatistics类提供了搜索的统计功能。getMostSearchedKeywords返回最常搜索的关键词getSearchTrends返回最近的搜索趋势。总结全文搜索功能是植物养护应用的重要功能。通过高效的搜索引擎和与OpenHarmony搜索服务的集成我们可以创建一个功能完整的搜索系统帮助用户快速找到所需的信息。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

做黑帽需不需要搭建网站重庆市建设工程造价管理总站

以下是一篇把这次“忘了域名对应代码目录在哪”的排查过程写清楚的说明文,照着做就能定位到 **https://deepskai.cn/** 对应的配置与代码目录。---# 如何快速定位某个域名(如 deepskai.cn)对应的部署配置与代码目录(CentOS 示例&a…

张小明 2025/12/25 22:39:30 网站建设

商务网站的主要存在形式wrix 网站开发

神经紧张素受体(NRT3)又称为糖蛋白95(Gp95)或分选蛋白(SORT1),它作为高尔基腔内的分选受体和细胞表面的清除受体发挥作用。通过不依赖于甘露糖-6-磷酸受体(M6PR)的途径将…

张小明 2025/12/25 22:39:33 网站建设

网站开发建设付款方式wordpress打开html文件下载

EmotiVoice发布CLI工具:让高表现力语音合成真正“开箱即用” 在AI驱动内容生成的今天,语音不再只是信息传递的载体,更是情感表达和人格塑造的关键媒介。从智能客服到虚拟主播,从有声书到游戏NPC,用户早已不满足于“能说…

张小明 2025/12/25 22:39:32 网站建设

各大游戏网站网站建设功能需求

Qwen3-8B:双模式切换,推理对话新体验 【免费下载链接】Qwen3-8B Qwen3-8B,新一代大型语言模型,实现逻辑推理、指令遵循和跨语言交流的飞跃性进展。独特思维模式切换,高效对话与深度推理两不误,是多语言交互…

张小明 2025/12/31 10:02:40 网站建设

深圳罗湖区网站建设公司珠海企业网站建设报价

LangFlow 与 sqlmap 融合:构建可视化 SQL 注入智能检测系统 在现代 Web 安全攻防对抗中,SQL 注入依然是威胁最广泛、危害最严重的漏洞类型之一。尽管已有 sqlmap 这类高度成熟的自动化检测工具,但其命令行驱动的操作方式对新手不够友好&#…

张小明 2025/12/25 22:39:36 网站建设

网站建设小组实验报告最优惠的赣州网站建设

虚拟串口不是“装上就能用”——工程师踩坑前必须搞懂的5个硬核真相你有没有遇到过这种情况:调试一个Modbus从设备,手头只有笔记本电脑,连个RS-232接口都没有?或者远程客户现场的PLC突然通信中断,你却没法亲自插根串口…

张小明 2025/12/25 22:39:35 网站建设