From e1f3a83449248608ea42495b2ea6c2723ed37b00 Mon Sep 17 00:00:00 2001 From: panda <7934952@qq.com> Date: Thu, 6 Jun 2024 17:02:07 +0800 Subject: [PATCH] add news --- package-lock.json | 186 +++++++++++++------------ package.json | 6 +- src/assets/index.ts | 53 +++++-- src/components/blogs/HomePage.vue | 221 ++++++++++++++++++++---------- src/components/blogs/ceshi.vue | 107 ++++++++++----- src/main.ts | 2 - 6 files changed, 357 insertions(+), 218 deletions(-) diff --git a/package-lock.json b/package-lock.json index e896e25..8bab3ac 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,14 +9,16 @@ "version": "0.0.0", "dependencies": { "ant-design-vue": "^4.2.1", + "aplayer": "^1.10.1", "axios": "^1.7.2", "echarts": "^5.5.0", "normalize.css": "^8.0.1", "pinia": "^2.1.7", "simplebar-vue": "^2.3.4", + "typed.js": "^2.1.0", "vue": "^3.4.21", - "vue-router": "^4.3.0", - "vue-typewriter-effect": "^1.0.1" + "vue-audio-better": "^3.0.1", + "vue-router": "^4.3.0" }, "devDependencies": { "@tsconfig/node20": "^20.1.4", @@ -934,6 +936,16 @@ "vue": ">=3.2.0" } }, + "node_modules/aplayer": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/aplayer/-/aplayer-1.10.1.tgz", + "integrity": "sha512-HAfyxgCUTLAqtYlxzzK9Fyqg6y+kZ9CqT1WfeWE8FSzwspT6oBqWOZHANPHF3RGTtC33IsyEgrfthPDzU5r9kQ==", + "dependencies": { + "balloon-css": "^0.5.0", + "promise-polyfill": "7.1.0", + "smoothscroll": "0.4.0" + } + }, "node_modules/array-tree-filter": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-tree-filter/-/array-tree-filter-2.1.0.tgz", @@ -965,6 +977,11 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "node_modules/balloon-css": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/balloon-css/-/balloon-css-0.5.2.tgz", + "integrity": "sha512-zheJpzwyNrG4t39vusA67v3BYg1HTVXOF8cErPEHzWK88PEOFwgo6Ea9VHOgOWNMgeuOtFVtB73NE2NWl9uDyQ==" + }, "node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -1177,6 +1194,11 @@ "he": "bin/he" } }, + "node_modules/howler": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/howler/-/howler-2.2.4.tgz", + "integrity": "sha512-iARIBPgcQrwtEr+tALF+rapJ8qSc+Set2GJQl7xT1MQzWaVkFebdJhR3alVlSiUf5U7nAANKuj3aWpwerocD5w==" + }, "node_modules/is-plain-object": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", @@ -1344,14 +1366,6 @@ "npm": ">= 8" } }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -1367,11 +1381,6 @@ "node": ">=8" } }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" - }, "node_modules/picocolors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", @@ -1466,59 +1475,31 @@ "node": "^10 || ^12 || >=14" } }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "optional": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, + "node_modules/promise-polyfill": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-7.1.0.tgz", + "integrity": "sha512-P6NJ2wU/8fac44ENORsuqT8TiolKGB2u0fEClPtXezn7w5cmLIjM/7mhPlTebke2EPr6tmqZbXvnX0TxwykGrg==" + }, "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" }, - "node_modules/raf": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "dependencies": { - "performance-now": "^2.1.0" - } - }, - "node_modules/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.2" - }, - "peerDependencies": { - "react": "^18.3.1" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, "node_modules/read-package-json-fast": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", @@ -1577,15 +1558,6 @@ "fsevents": "~2.3.2" } }, - "node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0" - } - }, "node_modules/scroll-into-view-if-needed": { "version": "2.2.31", "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.31.tgz", @@ -1689,6 +1661,19 @@ } } }, + "node_modules/smoothscroll": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/smoothscroll/-/smoothscroll-0.4.0.tgz", + "integrity": "sha512-sggQ3U2Un38b3+q/j1P4Y4fCboCtoUIaBYoge+Lb6Xg1H8RTIif/hugVr+ErMtIDpvBbhQfTjtiTeYAfbw1ZGQ==" + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/source-map-js": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", @@ -1715,6 +1700,11 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" }, + "node_modules/typed.js": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/typed.js/-/typed.js-2.1.0.tgz", + "integrity": "sha512-bDuXEf7YcaKN4g08NMTUM6G90XU25CK3bh6U0THC/Mod/QPKlEt9g/EjvbYB8x2Qwr2p6J6I3NrsoYaVnY6wsQ==" + }, "node_modules/typescript": { "version": "5.4.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", @@ -1728,19 +1718,6 @@ "node": ">=14.17" } }, - "node_modules/typewriter-effect": { - "version": "2.21.0", - "resolved": "https://registry.npmjs.org/typewriter-effect/-/typewriter-effect-2.21.0.tgz", - "integrity": "sha512-Y3VL1fuJpUBj0gS4OTXBLzy1gnYTYaBuVuuO99tGNyTkkub5CXi+b/hsV7Og9fp6HlhogOwWJwgq7iXI5sQlEg==", - "dependencies": { - "prop-types": "^15.8.1", - "raf": "^3.4.1" - }, - "peerDependencies": { - "react": "^17.x || ^18.x", - "react-dom": "^17.x || ^18.x" - } - }, "node_modules/undici-types": { "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", @@ -1822,6 +1799,38 @@ } } }, + "node_modules/vue-audio-better": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/vue-audio-better/-/vue-audio-better-3.0.1.tgz", + "integrity": "sha512-rr0cItOgMHYOLy7VvIHowWGqm+qLcCpj4BZ+4saAHQCSwGcV8TTCefLyGpdIjlJtqL8ytBjjtObft6WSkQoAKQ==", + "dependencies": { + "howler": "^2.1.2", + "vue": "^2.6.10" + } + }, + "node_modules/vue-audio-better/node_modules/@vue/compiler-sfc": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.16.tgz", + "integrity": "sha512-KWhJ9k5nXuNtygPU7+t1rX6baZeqOYLEforUPjgNDBnLicfHCoi48H87Q8XyLZOrNNsmhuwKqtpDQWjEFe6Ekg==", + "dependencies": { + "@babel/parser": "^7.23.5", + "postcss": "^8.4.14", + "source-map": "^0.6.1" + }, + "optionalDependencies": { + "prettier": "^1.18.2 || ^2.0.0" + } + }, + "node_modules/vue-audio-better/node_modules/vue": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.16.tgz", + "integrity": "sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw==", + "deprecated": "Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details.", + "dependencies": { + "@vue/compiler-sfc": "2.7.16", + "csstype": "^3.1.0" + } + }, "node_modules/vue-router": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.3.2.tgz", @@ -1877,17 +1886,6 @@ "vue": "^3.0.0" } }, - "node_modules/vue-typewriter-effect": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/vue-typewriter-effect/-/vue-typewriter-effect-1.0.1.tgz", - "integrity": "sha512-Z154Ax79N66btsstF9X3yOY7cc+B8H5fJpcRxuJhcPQd5ii/yKAgwSXbRaT1lClnqwTcmzs1RG1ULqZKhC8UvQ==", - "dependencies": { - "typewriter-effect": "^2.19.0" - }, - "peerDependencies": { - "vue": "^3.2.45" - } - }, "node_modules/warning": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", diff --git a/package.json b/package.json index afc332d..62b1652 100644 --- a/package.json +++ b/package.json @@ -12,14 +12,16 @@ }, "dependencies": { "ant-design-vue": "^4.2.1", + "aplayer": "^1.10.1", "axios": "^1.7.2", "echarts": "^5.5.0", "normalize.css": "^8.0.1", "pinia": "^2.1.7", "simplebar-vue": "^2.3.4", + "typed.js": "^2.1.0", "vue": "^3.4.21", - "vue-router": "^4.3.0", - "vue-typewriter-effect": "^1.0.1" + "vue-audio-better": "^3.0.1", + "vue-router": "^4.3.0" }, "devDependencies": { "@tsconfig/node20": "^20.1.4", diff --git a/src/assets/index.ts b/src/assets/index.ts index 02f77a3..cfee6f7 100644 --- a/src/assets/index.ts +++ b/src/assets/index.ts @@ -1,23 +1,46 @@ import { defineComponent, h } from 'vue'; import { createFromIconfontCN } from '@ant-design/icons-vue'; -function createIconComponent(iconType:string){ - const IconComponent = createFromIconfontCN({ - scriptUrl: '//at.alicdn.com/t/c/font_4513281_240ozh2p7bxh.js', // 在 iconfont.cn 上生成 +function createIconComponent(iconType: string) { + const IconComponent = createFromIconfontCN({ + scriptUrl: '//at.alicdn.com/t/c/font_4513281_wqgw35udiqc.js', // 在 iconfont.cn 上生成 }); - - return defineComponent({ + + return defineComponent({ setup() { - return () => h(IconComponent , { type: iconType }); + return () => h(IconComponent, { type: iconType }); }, }); } -const TitleOutLined = createIconComponent( 'icon-xiongmaochizhuye'); -const BlogOutLined=createIconComponent( 'icon-blog'); -const SystemOutLined=createIconComponent( 'icon-system'); -const PhotoOutLined=createIconComponent( 'icon-photo'); -const FileOutLined=createIconComponent( 'icon-file'); -const DiaryOutLined=createIconComponent( 'icon-diary'); -const CommentOutLined=createIconComponent( 'icon-comment'); -const TypeOutLined=createIconComponent( 'icon-type'); -export {TitleOutLined,BlogOutLined,SystemOutLined,PhotoOutLined,FileOutLined,DiaryOutLined,CommentOutLined,TypeOutLined} \ No newline at end of file +const TitleOutLined = createIconComponent('icon-xiongmaochizhuye'); +const BlogOutLined = createIconComponent('icon-blog'); +const SystemOutLined = createIconComponent('icon-system'); +const PhotoOutLined = createIconComponent('icon-photo'); +const FileOutLined = createIconComponent('icon-file'); +const DiaryOutLined = createIconComponent('icon-diary'); +const CommentOutLined = createIconComponent('icon-comment'); +const TypeOutLined = createIconComponent('icon-type'); +const MusicLined = createIconComponent('icon-musicfill'); +const EmailLined = createIconComponent('icon-youxiang'); +const GitHubLined = createIconComponent('icon-github'); +const QQLined = createIconComponent('icon-QQ'); +const WechatLined = createIconComponent('icon-wechat-fill'); +const GravatarLined = createIconComponent('icon-brand-gravatar'); + + +export { + TitleOutLined, + BlogOutLined, + SystemOutLined, + PhotoOutLined, + FileOutLined, + DiaryOutLined, + CommentOutLined, + TypeOutLined, + MusicLined, + EmailLined, + GitHubLined, + QQLined, + WechatLined, + GravatarLined +} \ No newline at end of file diff --git a/src/components/blogs/HomePage.vue b/src/components/blogs/HomePage.vue index bc25c9b..46eb2a8 100644 --- a/src/components/blogs/HomePage.vue +++ b/src/components/blogs/HomePage.vue @@ -4,10 +4,7 @@ -
- -
- +
@@ -17,73 +14,141 @@
-
-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-

ceshi

-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

{{ text }}

+
+ +

{{ text }}

+
+ +

{{ text }}

+
+
+ +
+ + + +
+ +
+
+ +
+
+
\ No newline at end of file diff --git a/src/components/blogs/ceshi.vue b/src/components/blogs/ceshi.vue index 3ad3d4a..8b2cf8c 100644 --- a/src/components/blogs/ceshi.vue +++ b/src/components/blogs/ceshi.vue @@ -1,39 +1,82 @@ - - \ No newline at end of file + \ No newline at end of file diff --git a/src/main.ts b/src/main.ts index d8091d7..c0e0f67 100644 --- a/src/main.ts +++ b/src/main.ts @@ -4,9 +4,7 @@ import "normalize.css" import App from './App.vue' import router from './router' import Antd from 'ant-design-vue'; -import VueTypewriterEffect from "vue-typewriter-effect"; const app = createApp(App) -app.component("vue-typewriter-effect", VueTypewriterEffect) app.use(createPinia()) app.use(router) app.use(Antd)