Просмотр исходного кода

chore: 升级部分依赖以及将`vite`升级到最新版,性能再次提升

xiaoxian521 2 лет назад
Родитель
Сommit
8f528028b1
5 измененных файлов с 269 добавлено и 272 удалено
  1. 2 2
      build/info.ts
  2. 1 5
      build/optimize.ts
  3. 39 38
      package.json
  4. 219 221
      pnpm-lock.yaml
  5. 8 6
      src/views/components/video/index.vue

+ 2 - 2
build/info.ts

@@ -1,8 +1,8 @@
 import type { Plugin } from "vite";
 import dayjs, { Dayjs } from "dayjs";
+import utils from "@pureadmin/utils";
 import duration from "dayjs/plugin/duration";
 import { green, blue, bold } from "picocolors";
-import { getPackageSize } from "@pureadmin/utils";
 dayjs.extend(duration);
 
 export function viteBuildInfo(): Plugin {
@@ -33,7 +33,7 @@ export function viteBuildInfo(): Plugin {
     closeBundle() {
       if (config.command === "build") {
         endTime = dayjs(new Date());
-        getPackageSize({
+        utils.getPackageSize({
           folder: outDir,
           callback: (size: string) => {
             console.log(

+ 1 - 5
build/optimize.ts

@@ -38,11 +38,7 @@ const include = [
   "@amap/amap-jsapi-loader",
   "el-table-infinite-scroll",
   "@wangeditor/editor-for-vue",
-  "xgplayer/dist/simple_player",
-  "xgplayer/es/controls/volume",
-  "vuedraggable/src/vuedraggable",
-  "xgplayer/es/controls/screenShot",
-  "xgplayer/es/controls/playbackRate"
+  "vuedraggable/src/vuedraggable"
 ];
 
 /**

+ 39 - 38
package.json

@@ -30,120 +30,121 @@
   ],
   "dependencies": {
     "@amap/amap-jsapi-loader": "^1.0.1",
-    "@howdyjs/mouse-menu": "^2.0.5",
+    "@howdyjs/mouse-menu": "^2.0.7",
     "@logicflow/core": "^1.1.30",
     "@logicflow/extension": "^1.1.30",
     "@pureadmin/descriptions": "^1.1.1",
     "@pureadmin/table": "^2.0.0",
-    "@pureadmin/utils": "^1.8.5",
-    "@vueuse/core": "^9.13.0",
+    "@pureadmin/utils": "^1.8.7",
+    "@vueuse/core": "^10.0.2",
     "@vueuse/motion": "2.0.0-beta.12",
     "@wangeditor/editor": "^5.1.21",
     "@wangeditor/editor-for-vue": "^5.1.12",
     "animate.css": "^4.1.1",
-    "axios": "^1.2.2",
+    "axios": "1.2.2",
     "china-area-data": "^5.0.1",
-    "cropperjs": "^1.5.12",
+    "cropperjs": "^1.5.13",
     "dayjs": "^1.11.7",
     "echarts": "^5.4.2",
     "el-table-infinite-scroll": "^3.0.1",
-    "element-plus": "^2.3.1",
+    "element-plus": "^2.3.3",
     "element-resize-detector": "^1.2.4",
     "intro.js": "^6.0.0",
     "js-cookie": "^3.0.1",
     "jsbarcode": "^3.11.5",
-    "md-editor-v3": "^2.7.2",
+    "md-editor-v3": "^2.11.2",
     "mitt": "^3.0.0",
     "mockjs": "^1.1.0",
     "nprogress": "^0.2.0",
     "path": "^0.12.7",
-    "pinia": "^2.0.33",
+    "pinia": "^2.0.34",
     "qrcode": "^1.5.1",
-    "qs": "^6.11.0",
+    "qs": "^6.11.1",
     "responsive-storage": "^2.2.0",
     "sortablejs": "^1.15.0",
-    "swiper": "^9.1.0",
+    "swiper": "^9.2.3",
     "typeit": "^8.7.1",
     "v-contextmenu": "3.0.0",
     "vue": "^3.2.47",
     "vue-i18n": "^9.2.2",
-    "vue-json-pretty": "^2.2.3",
+    "vue-json-pretty": "^2.2.4",
     "vue-pdf-embed": "^1.1.5",
     "vue-router": "^4.1.6",
     "vue-types": "^5.0.2",
     "vue-virtual-scroller": "2.0.0-beta.7",
-    "vue3-danmaku": "^1.2.0",
+    "vue3-danmaku": "1.4.0-beta.1",
     "vuedraggable": "^4.1.0",
-    "xgplayer": "^2.32.2",
+    "xgplayer": "^3.0.1",
     "xlsx": "^0.18.5"
   },
   "devDependencies": {
     "@commitlint/cli": "13.1.0",
     "@commitlint/config-conventional": "13.1.0",
-    "@iconify-icons/ep": "^1.2.10",
-    "@iconify-icons/ri": "^1.2.4",
-    "@iconify/vue": "^4.0.2",
+    "@iconify-icons/ep": "^1.2.11",
+    "@iconify-icons/ri": "^1.2.7",
+    "@iconify/vue": "^4.1.1",
     "@intlify/unplugin-vue-i18n": "^0.10.0",
     "@pureadmin/theme": "^3.0.0",
     "@types/element-resize-detector": "1.1.3",
-    "@types/intro.js": "^5.1.0",
-    "@types/js-cookie": "^3.0.1",
+    "@types/intro.js": "^5.1.1",
+    "@types/js-cookie": "^3.0.3",
     "@types/mockjs": "^1.0.7",
-    "@types/node": "^18.11.9",
+    "@types/node": "^18.15.12",
     "@types/nprogress": "0.2.0",
-    "@types/qrcode": "^1.4.2",
+    "@types/qrcode": "^1.5.0",
     "@types/qs": "^6.9.7",
-    "@types/sortablejs": "^1.15.0",
-    "@typescript-eslint/eslint-plugin": "^5.43.0",
-    "@typescript-eslint/parser": "^5.43.0",
+    "@types/sortablejs": "^1.15.1",
+    "@typescript-eslint/eslint-plugin": "^5.59.0",
+    "@typescript-eslint/parser": "^5.59.0",
     "@vitejs/plugin-vue": "^4.1.0",
     "@vitejs/plugin-vue-jsx": "^3.0.1",
-    "@vue/eslint-config-prettier": "^7.0.0",
+    "@vue/eslint-config-prettier": "^7.1.0",
     "@vue/eslint-config-typescript": "^11.0.2",
     "autoprefixer": "^10.4.14",
     "cloc": "^2.11.0",
     "cssnano": "^6.0.0",
     "eslint": "^8.8.0",
-    "eslint-plugin-prettier": "^4.0.0",
-    "eslint-plugin-vue": "^9.7.0",
+    "eslint-plugin-prettier": "^4.2.1",
+    "eslint-plugin-vue": "^9.11.0",
     "husky": "^7.0.4",
     "lint-staged": "11.1.2",
     "picocolors": "^1.0.0",
-    "postcss": "^8.4.21",
+    "postcss": "^8.4.23",
     "postcss-html": "^1.5.0",
     "postcss-import": "^15.1.0",
     "postcss-scss": "^4.0.6",
-    "prettier": "^2.5.1",
+    "prettier": "^2.8.7",
     "pretty-quick": "3.1.1",
     "rimraf": "^4.4.1",
     "rollup-plugin-visualizer": "^5.9.0",
-    "sass": "^1.60.0",
+    "sass": "^1.62.0",
     "sass-loader": "^13.2.2",
     "stylelint": "^14.3.0",
-    "stylelint-config-html": "^1.0.0",
-    "stylelint-config-prettier": "^9.0.3",
+    "stylelint-config-html": "^1.1.0",
+    "stylelint-config-prettier": "^9.0.5",
     "stylelint-config-recommended": "^9.0.0",
     "stylelint-config-standard": "^29.0.0",
     "stylelint-order": "^5.0.0",
     "svgo": "^3.0.2",
-    "tailwindcss": "^3.2.7",
-    "terser": "^5.16.8",
-    "typescript": "^5.0.2",
-    "unplugin-vue-define-options": "^1.0.0",
-    "vite": "^4.2.1",
+    "tailwindcss": "^3.3.1",
+    "terser": "^5.17.1",
+    "typescript": "^5.0.4",
+    "unplugin-vue-define-options": "1.1.6",
+    "vite": "^4.3.0",
     "vite-plugin-cdn-import": "^0.3.5",
     "vite-plugin-compression": "^0.5.1",
     "vite-plugin-mock": "^2.9.6",
     "vite-plugin-remove-console": "^2.1.0",
     "vite-svg-loader": "^4.0.0",
-    "vue-eslint-parser": "^9.1.0",
+    "vue-eslint-parser": "^9.1.1",
     "vue-tsc": "^1.2.0"
   },
   "pnpm": {
     "peerDependencyRules": {
       "ignoreMissing": [
         "rollup",
-        "webpack"
+        "webpack",
+        "core-js"
       ]
     },
     "allowedDeprecatedVersions": {

Разница между файлами не показана из-за своего большого размера
+ 219 - 221
pnpm-lock.yaml


+ 8 - 6
src/views/components/video/index.vue

@@ -1,13 +1,12 @@
 <script setup lang="ts">
 import { onMounted } from "vue";
-import Player from "xgplayer/dist/simple_player";
-import volume from "xgplayer/es/controls/volume";
 import { deviceDetection } from "@pureadmin/utils";
-import screenShot from "xgplayer/es/controls/screenShot";
-import playbackRate from "xgplayer/es/controls/playbackRate";
 import { useRenderIcon } from "@/components/ReIcon/src/hooks";
 import VideoPlay from "@iconify-icons/ep/video-play";
 
+import Player from "xgplayer";
+import "xgplayer/dist/index.min.css";
+
 defineOptions({
   name: "Video"
 });
@@ -15,15 +14,18 @@ defineOptions({
 onMounted(() => {
   new Player({
     id: "mse",
+    lang: "zh",
     // 默认静音
     volume: 0,
     autoplay: false,
     screenShot: true,
+    videoAttributes: {
+      crossOrigin: "anonymous"
+    },
     url: "https://sf1-hscdn-tos.pstatp.com/obj/media-fe/xgplayer_doc_video/mp4/xgplayer-demo-720p.mp4",
     poster:
       "https://s2.pstatp.com/cdn/expire-1-M/byted-player-videos/1.0.0/poster.jpg",
     fluid: deviceDetection(),
-    controlPlugins: [volume, playbackRate, screenShot],
     //传入倍速可选数组
     playbackRate: [0.5, 0.75, 1, 1.5, 2]
   });
@@ -37,7 +39,7 @@ onMounted(() => {
         <span class="font-medium">
           视频组件,采用开源的
           <el-link
-            href="https://v2.h5player.bytedance.com"
+            href="https://v3.h5player.bytedance.com/"
             target="_blank"
             :icon="useRenderIcon(VideoPlay)"
             style="font-size: 16px; margin: 0 4px 5px"

Некоторые файлы не были показаны из-за большого количества измененных файлов