响应式网站是什么百度api开放平台

张小明 2026/1/8 20:54:30
响应式网站是什么,百度api开放平台,做出口的网站,江苏镇江市文章目录 一、核心迁移思路二、分步实现#xff08;基础迁移#xff09;1. 组件骨架搭建#xff08;单文件组件格式#xff09;2. 核心功能迁移映射#xff08;jQuery → Vue 3#xff09; 三、性能优化关键措施1. 渲染优化#xff08;减少 DOM 操作#xff09;2. 数据…文章目录一、核心迁移思路二、分步实现基础迁移1. 组件骨架搭建单文件组件格式2. 核心功能迁移映射jQuery → Vue 3三、性能优化关键措施1. 渲染优化减少 DOM 操作2. 数据处理优化3. 其他优化四、迁移注意事项一、核心迁移思路结构重构将 jQuery DOM 操作转为 Vue 3 模板语法用v-for渲染表格行 / 列v-bind绑定属性v-on绑定事件替代$(el).on()。状态管理把表格数据、分页信息、筛选条件等抽为 Vue 响应式数据ref/reactive替代 jQuery 全局变量 / 数据缓存。方法封装将表格初始化、数据刷新、排序筛选等逻辑封装为组件方法通过 Vue 实例调用替代 jQuery 插件链式调用。二、分步实现基础迁移1. 组件骨架搭建单文件组件格式template div classtable-container !-- 筛选栏 -- div classtable-filter input v-modelsearchKey inputhandleSearch placeholder搜索... / /div !-- 表格主体 -- table classvue-table thead tr th v-forcol in columns :keycol.key clickhandleSort(col.key) {{ col.label }} span v-ifsortKey col.key{{ sortOrder asc ? ↑ : ↓ }}/span /th /tr /thead tbody tr v-for(item, index) in tableData :keyindex td v-forcol in columns :keycol.key{{ item[col.key] }}/td /tr /tbody /table !-- 分页 -- div classtable-pagination button clickprevPage :disabledcurrentPage 1上一页/button span{{ currentPage }}/{{ totalPages }}/span button clicknextPage :disabledcurrentPage totalPages下一页/button /div /div /template script setup import { ref, computed } from vue; // 接收父组件传参替代jQuery插件配置项 const props defineProps({ columns: { type: Array, required: true, default: () [] // 格式[{ key: id, label: ID }, ...] }, dataSource: { type: Array, required: true, default: () [] }, pageSize: { type: Number, default: 10 } }); // 响应式状态替代jQuery数据缓存 const searchKey ref(); const sortKey ref(); const sortOrder ref(asc); // asc/desc const currentPage ref(1); // 计算属性筛选排序分页后的数据 const filteredData computed(() { return props.dataSource.filter(item Object.values(item).some(val val.toString().includes(searchKey.value)) ).sort((a, b) { if (!sortKey.value) return 0; return sortOrder.value asc ? a[sortKey.value] - b[sortKey.value] : b[sortKey.value] - a[sortKey.value]; }); }); // 分页相关计算 const totalPages computed(() Math.ceil(filteredData.value.length / props.pageSize)); const tableData computed(() { const start (currentPage.value - 1) * props.pageSize; return filteredData.value.slice(start, start props.pageSize); }); // 方法封装替代jQuery插件方法 const handleSearch () { currentPage.value 1; // 搜索后重置页码 }; const handleSort (key) { if (sortKey.value key) { sortOrder.value sortOrder.value asc ? desc : asc; } else { sortKey.value key; sortOrder.value asc; } }; const prevPage () currentPage.value--; const nextPage () currentPage.value; /script style scoped /* 保留原jQuery组件样式去除兼容前缀如-webkit-优化选择器 */ .table-container { width: 100%; overflow-x: auto; } .vue-table { width: 100%; border-collapse: collapse; } .vue-table th, .vue-table td { padding: 8px; border: 1px solid #eee; text-align: left; } .vue-table th { cursor: pointer; background: #f5f5f5; } .table-filter { margin-bottom: 16px; } .table-pagination { margin-top: 16px; text-align: right; } /style2. 核心功能迁移映射jQuery → Vue 3jQuery 实现方式Vue 3 替代方案$(el).html()渲染表格v-for模板渲染 响应式数据驱动$(el).on(‘click’, 排序)click事件绑定 响应式sortKey/sortOrder全局变量存储分页信息ref定义currentPage/pageSize$.ajax请求数据后更新 DOM父组件传参dataSource 计算属性自动响应$(input).val()获取筛选值v-model绑定searchKey三、性能优化关键措施1. 渲染优化减少 DOM 操作虚拟列表大数据量1000 条时用vue-virtual-scroller只渲染可视区域行避免一次性渲染所有 DOMtemplate virtual-scroller :itemstableData :item-size40 classtable-body template #default{ item } tr td v-forcol in columns :keycol.key{{ item[col.key] }}/td /tr /template /virtual-scroller /template script setup import { VirtualScroller } from vue-virtual-scroller; import vue-virtual-scroller/dist/vue-virtual-scroller.css; /script避免不必要渲染表格行用v-memo[item.id]缓存仅当数据变化时重新渲染。2. 数据处理优化防抖搜索避免输入时频繁筛选给搜索加防抖延迟 300msimport{debounce}fromlodash;// 或自定义防抖函数consthandleSearchdebounce((){currentPage.value1;},300);分页逻辑优化大数据量时改为后端分页通过currentPage和pageSize请求接口前端仅渲染当前页数据。3. 其他优化样式优化去除内联样式用scoped样式隔离避免样式冲突使用 CSS 变量简化主题配置。事件优化表头排序事件用event.stopPropagation()阻止冒泡避免不必要的事件触发。按需加载如果表格包含导出、打印等附加功能用defineAsyncComponent按需加载对应模块。四、迁移注意事项jQuery 依赖清理移除代码中$、jQuery相关调用若需操作 DOM用 Vue 3 的refel.value谨慎使用优先数据驱动。兼容性处理Vue 3 不支持 IE 浏览器若需兼容可使用Vue 2vue/composition-api迁移或添加polyfill。测试验证迁移后需验证核心功能渲染、排序、筛选、分页并测试大数据量下的性能对比原 jQuery 组件的渲染速度、内存占用。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

wordpress设置了固定连接打不开全网网站建设优化

目录 一、LabelImg 简介 二、安装方法 Windows 系统 macOS 系统 Linux 系统 三、基本界面介绍 四、完整标注流程 步骤1:准备工作 步骤2:打开标注工具 步骤3:设置参数 步骤4:开始标注 步骤5:保存和导航 五…

张小明 2026/1/5 22:34:18 网站建设

网站开发笔记本要多少钱的克拉玛依住房和建设局网站

印度煤炭资源需求预测与供应链管理中的量子计算革命 1. 引言 煤炭是全球最普遍且储量丰富的化石燃料,是对世界经济有重大贡献的全球性产业。超 50 个国家为经济目的开采煤炭,超 70 个国家消费煤炭。全球每年燃烧的约 58 亿吨煤炭中,约 75%用于发电。预计到 2030 年,煤炭使…

张小明 2026/1/5 22:34:18 网站建设

上海 网站设计 排名做一个简单网站多少钱

Ubuntu内核与模块管理全攻略 1. 强制加载模块 在Ubuntu中,有时会遇到加载模块失败的情况,比如模块编译时使用的内核版本与当前运行的内核版本不同,以NVIDIA显卡模块为例。这时可以使用以下命令强制加载模块: # insmod -f nvidia若内核产生错误信息,在这种情况下可以忽…

张小明 2026/1/5 22:34:20 网站建设

水果商城网站制作多少钱宝塔面板 wordpress

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个面向绝对初学者的SQLite安装指南,要求:1) 使用分步骤截图文字说明的形式 2) 包含Windows和Mac两个版本 3) 每个步骤标注常见错误及解决方法 4) 最后…

张小明 2026/1/5 22:34:20 网站建设

单页购物网站源码微信自建小程序

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 构建一个ComfyUI Manager快速原型开发工具包,包含:1) 常用节点模板库;2) 参数快速调整面板;3) 实时预览和A/B测试功能;4)…

张小明 2026/1/5 22:34:21 网站建设

英文网站建设服务合同模板大淘客cms网站怎么做

Wan2.2-T2V-A14B在AI辅助婚礼策划中的浪漫场景预演 你有没有过这样的经历?站在婚庆公司设计师面前,听着对方用“森系原木风”“巴洛克穹顶”“柔光纱幔垂坠感”这些术语滔滔不绝地描述一场婚礼,而你的脑海里却始终拼不出完整的画面。最后签了…

张小明 2026/1/5 22:34:23 网站建设