From 1a6b0fc3b41ec79fd4f6145ee4411f413106d09b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=98=B1=E8=BE=BE?= Date: Thu, 12 Jun 2025 17:27:54 +0800 Subject: [PATCH] =?UTF-8?q?feat(comparison):=20=E6=B7=BB=E5=8A=A0=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E5=AF=B9=E6=AF=94=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在路由中添加 /comparison 路径 - 创建产品对比页面和相关组件 - 实现产品对比数据展示和滚动处理 - 集成 Element UI 表格组件 - 优化页面样式和交互 --- babel.config.js | 7 + package.json | 7 +- src/main.js | 4 + src/router/generatedRouter/index.js | 8 + src/views/app/Home.vue | 17 +- src/views/comparison/comparsion.vue | 239 ++++++++++++++++++++++++++++ src/views/comparison/index.vue | 196 +++++++++++++++++++++++ src/views/comparison/table.vue | 105 ++++++++++++ 8 files changed, 580 insertions(+), 3 deletions(-) create mode 100644 src/views/comparison/comparsion.vue create mode 100644 src/views/comparison/index.vue create mode 100644 src/views/comparison/table.vue diff --git a/babel.config.js b/babel.config.js index 8c3d848..6f81f2e 100644 --- a/babel.config.js +++ b/babel.config.js @@ -9,6 +9,13 @@ module.exports = { style: true }, 'vant' + ], + [ + 'component', + { + libraryName: 'element-ui', + styleLibraryName: 'theme-chalk' + } ] ] } diff --git a/package.json b/package.json index 7ae02b4..4d83119 100644 --- a/package.json +++ b/package.json @@ -18,9 +18,11 @@ }, "dependencies": { "@better-scroll/core": "^2.5.1", + "@isaacs/cliui": "^8.0.2", "axios": "^0.19.0", - "core-js": "^2.6.5", + "core-js": "^3.43.0", "dingtalk-jsapi": "^3.0.38", + "element-ui": "^2.15.14", "eruda": "^2.11.3", "fastclick": "^1.0.6", "markdown-it": "^12.3.2", @@ -33,7 +35,7 @@ "swiper": "^5.4.5", "v-viewer": "^1.6.4", "vant": "^2.12.54", - "vue": "^2.6.10", + "vue": "^2.7.16", "vue-pdf": "^4.3.0", "vue-quill-editor": "^3.0.6", "vue-router": "^3.5.2", @@ -51,6 +53,7 @@ "babel-core": "7.0.0-bridge.0", "babel-eslint": "^10.0.1", "babel-jest": "^23.6.0", + "babel-plugin-component": "^1.1.1", "babel-plugin-import": "^1.12.0", "browserslist": "^4.25.0", "caniuse-lite": "^1.0.30001721", diff --git a/src/main.js b/src/main.js index 650d27d..4096e83 100644 --- a/src/main.js +++ b/src/main.js @@ -20,6 +20,10 @@ import { Toast, Form, Loading, Lazyload, Notify, Image, Button, Dialog } from 'v import generatedFormat from '@/assets/js/generatedFormat/index' import generatedApi from '@/api/generatedApi/index' import generatedComponents from './generatedComponents' + +import {Table,TableColumn} from 'element-ui' +Vue.component(Table.name, Table); +Vue.component(TableColumn.name, TableColumn); for (let item in generatedComponents) { Vue.component(item, generatedComponents[item]) } diff --git a/src/router/generatedRouter/index.js b/src/router/generatedRouter/index.js index 4284d5e..86d5f9e 100644 --- a/src/router/generatedRouter/index.js +++ b/src/router/generatedRouter/index.js @@ -15,4 +15,12 @@ export default [ title: '客服助手', }, }, + { + path: '/comparison', + name: 'comparison', + component: () => import('@/views/comparison/index.vue'), + meta: { + title: '产品对比', + }, + }, ] diff --git a/src/views/app/Home.vue b/src/views/app/Home.vue index 28edba2..989991b 100644 --- a/src/views/app/Home.vue +++ b/src/views/app/Home.vue @@ -11,16 +11,25 @@ + + + + + + + + + diff --git a/src/views/comparison/index.vue b/src/views/comparison/index.vue new file mode 100644 index 0000000..98e9e18 --- /dev/null +++ b/src/views/comparison/index.vue @@ -0,0 +1,196 @@ + + + + + diff --git a/src/views/comparison/table.vue b/src/views/comparison/table.vue new file mode 100644 index 0000000..6de138e --- /dev/null +++ b/src/views/comparison/table.vue @@ -0,0 +1,105 @@ + + + + +