chore: vite-plugin-cdn-import
All checks were successful
CI / cache-and-install (push) Successful in 56s

This commit is contained in:
严浩
2024-08-14 11:26:12 +08:00
parent 1c2a6ced9e
commit 192448fbc1
6 changed files with 91 additions and 6 deletions

6
.env
View File

@ -1,4 +1,6 @@
VITE_BUILD_TIME=
VITE_BUILD_COMMIT=
VITE_BASE=/
VITE_SPLIT_CHUNKS=true
VITE_SOURCE_MAP=true
VITE_BUILD_TIME=
VITE_BUILD_COMMIT=

1
components.d.ts vendored
View File

@ -15,6 +15,5 @@ declare module 'vue' {
IconTooling: typeof import('./src/components/icons/IconTooling.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView']
TButton: typeof import('tdesign-mobile-vue/esm')['Button']
}
}

View File

@ -66,6 +66,7 @@
"unplugin-vue-markdown": "^0.26.2",
"unplugin-vue-router": "^0.10.2",
"vite": "^5.4.0",
"vite-plugin-cdn-import": "^1.0.1",
"vite-plugin-vue-devtools": "^7.3.7",
"vitest": "^2.0.5",
"vue-tsc": "^2.0.29"

76
pnpm-lock.yaml generated
View File

@ -164,6 +164,9 @@ importers:
vite:
specifier: ^5.4.0
version: 5.4.0(@types/node@22.2.0)(less@4.2.0)
vite-plugin-cdn-import:
specifier: ^1.0.1
version: 1.0.1(rollup@4.20.0)(vite@5.4.0(@types/node@22.2.0)(less@4.2.0))
vite-plugin-vue-devtools:
specifier: ^7.3.7
version: 7.3.8(rollup@4.20.0)(vite@5.4.0(@types/node@22.2.0)(less@4.2.0))(vue@3.4.37(typescript@5.5.4))
@ -1519,6 +1522,9 @@ packages:
error-stack-parser-es@0.1.5:
resolution: {integrity: sha512-xHku1X40RO+fO8yJ8Wh2f2rZWVjqyhb1zgq1yZ8aZRQkv6OOKhKWRUaht3eSCUbAOBaKIgM+ykwFLE+QUxgGeg==}
es-module-lexer@0.4.1:
resolution: {integrity: sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==, tarball: https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz}
esbuild@0.21.5:
resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
engines: {node: '>=12'}
@ -1690,6 +1696,10 @@ packages:
resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
engines: {node: '>= 6'}
fs-extra@10.1.0:
resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==, tarball: https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz}
engines: {node: '>=12'}
fs-extra@11.2.0:
resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
engines: {node: '>=14.14'}
@ -1880,6 +1890,9 @@ packages:
is-potential-custom-element-name@1.0.1:
resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
is-reference@3.0.2:
resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==, tarball: https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz}
is-stream@2.0.1:
resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
engines: {node: '>=8'}
@ -2027,6 +2040,9 @@ packages:
resolution: {integrity: sha512-oN3Bcd7ZVt+0VGEs7402qR/tjgjbM7kPlH/z7ufJnzTLVBzXJITRHOJiwMmmYMgZfdoWQsfQcY+iKlxiBppnMA==}
engines: {node: '>=16.14.0'}
magic-string@0.25.9:
resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==, tarball: https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz}
magic-string@0.30.11:
resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==}
@ -2383,6 +2399,11 @@ packages:
deprecated: Rimraf versions prior to v4 are no longer supported
hasBin: true
rollup-plugin-external-globals@0.10.0:
resolution: {integrity: sha512-RXlupZrmn97AaaS5dWnktkjM+Iy+od0E+8L0mUkMIs3iuoUXNJebueQocQKV7Ircd54fSGGmkBaXwNzY05J1yQ==, tarball: https://registry.npmjs.org/rollup-plugin-external-globals/-/rollup-plugin-external-globals-0.10.0.tgz}
peerDependencies:
rollup: ^2.25.0 || ^3.3.0 || ^4.1.4
rollup@4.20.0:
resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
@ -2468,6 +2489,10 @@ packages:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, tarball: https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz}
engines: {node: '>=0.10.0'}
sourcemap-codec@1.4.8:
resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==, tarball: https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz}
deprecated: Please use @jridgewell/sourcemap-codec instead
speakingurl@14.0.1:
resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
engines: {node: '>=0.10.0'}
@ -2736,6 +2761,15 @@ packages:
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
vite-plugin-cdn-import@1.0.1:
resolution: {integrity: sha512-lgjLxgwFSKvJLbqjVBirUZ0rQo00GpUGJzRpgQu8RyBw9LA7jaqG6fUMQzBC9qWmTGabPC3iOzwCcoi7PseRAQ==, tarball: https://registry.npmjs.org/vite-plugin-cdn-import/-/vite-plugin-cdn-import-1.0.1.tgz}
vite-plugin-externals@0.6.2:
resolution: {integrity: sha512-R5oVY8xDJjLXLTs2XDYzvYbc/RTZuIwOx2xcFbYf+/VXB6eJuatDgt8jzQ7kZ+IrgwQhe6tU8U2fTyy72C25CQ==, tarball: https://registry.npmjs.org/vite-plugin-externals/-/vite-plugin-externals-0.6.2.tgz}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
vite: '>=2.0.0'
vite-plugin-inspect@0.8.5:
resolution: {integrity: sha512-JvTUqsP1JNDw0lMZ5Z/r5cSj81VK2B7884LO1DC3GMBhdcjcsAnJjdWq7bzQL01Xbh+v60d3lju3g+z7eAtNew==}
engines: {node: '>=14'}
@ -4376,6 +4410,8 @@ snapshots:
error-stack-parser-es@0.1.5: {}
es-module-lexer@0.4.1: {}
esbuild@0.21.5:
optionalDependencies:
'@esbuild/aix-ppc64': 0.21.5
@ -4626,6 +4662,12 @@ snapshots:
combined-stream: 1.0.8
mime-types: 2.1.35
fs-extra@10.1.0:
dependencies:
graceful-fs: 4.2.11
jsonfile: 6.1.0
universalify: 2.0.1
fs-extra@11.2.0:
dependencies:
graceful-fs: 4.2.11
@ -4803,6 +4845,10 @@ snapshots:
is-potential-custom-element-name@1.0.1: {}
is-reference@3.0.2:
dependencies:
'@types/estree': 1.0.5
is-stream@2.0.1: {}
is-stream@3.0.0: {}
@ -4958,6 +5004,10 @@ snapshots:
dependencies:
magic-string: 0.30.11
magic-string@0.25.9:
dependencies:
sourcemap-codec: 1.4.8
magic-string@0.30.11:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.0
@ -5260,6 +5310,14 @@ snapshots:
dependencies:
glob: 7.2.3
rollup-plugin-external-globals@0.10.0(rollup@4.20.0):
dependencies:
'@rollup/pluginutils': 5.1.0(rollup@4.20.0)
estree-walker: 3.0.3
is-reference: 3.0.2
magic-string: 0.30.11
rollup: 4.20.0
rollup@4.20.0:
dependencies:
'@types/estree': 1.0.5
@ -5342,6 +5400,8 @@ snapshots:
source-map@0.6.1:
optional: true
sourcemap-codec@1.4.8: {}
speakingurl@14.0.1: {}
sprintf-js@1.0.3: {}
@ -5668,6 +5728,22 @@ snapshots:
- supports-color
- terser
vite-plugin-cdn-import@1.0.1(rollup@4.20.0)(vite@5.4.0(@types/node@22.2.0)(less@4.2.0)):
dependencies:
rollup-plugin-external-globals: 0.10.0(rollup@4.20.0)
vite-plugin-externals: 0.6.2(vite@5.4.0(@types/node@22.2.0)(less@4.2.0))
transitivePeerDependencies:
- rollup
- vite
vite-plugin-externals@0.6.2(vite@5.4.0(@types/node@22.2.0)(less@4.2.0)):
dependencies:
acorn: 8.12.1
es-module-lexer: 0.4.1
fs-extra: 10.1.0
magic-string: 0.25.9
vite: 5.4.0(@types/node@22.2.0)(less@4.2.0)
vite-plugin-inspect@0.8.5(rollup@4.20.0)(vite@5.4.0(@types/node@22.2.0)(less@4.2.0)):
dependencies:
'@antfu/utils': 0.7.10

View File

@ -8,7 +8,7 @@ export const usePageData = defineBasicLoader(
async (...args) => {
console.log('[DefineLoaderFn]', 'args :>> ', args);
const [route] = args;
await new Promise((resolve) => setTimeout(resolve, 1000));
await new Promise((resolve) => setTimeout(resolve, 520));
return { idFromPreviousPage: route.params.id, someOtherData: 'someOtherData' };
},
{

View File

@ -6,11 +6,12 @@ import UnoCSS from 'unocss/vite';
import AutoImport from 'unplugin-auto-import/vite';
import { TDesignResolver } from 'unplugin-vue-components/resolvers';
import Components from 'unplugin-vue-components/vite';
import Markdown from 'unplugin-vue-markdown/vite';
import { getPascalCaseRouteName, VueRouterAutoImports } from 'unplugin-vue-router';
import VueRouter from 'unplugin-vue-router/vite';
import { defineConfig, loadEnv } from 'vite';
import cdnImport from 'vite-plugin-cdn-import';
import vueDevTools from 'vite-plugin-vue-devtools';
import Markdown from 'unplugin-vue-markdown/vite';
// https://vitejs.dev/config/
export default defineConfig(({ mode, command }) => {
@ -56,6 +57,12 @@ export default defineConfig(({ mode, command }) => {
vueJsx(),
Markdown({}),
vueDevTools(),
cdnImport({
// https://github.com/mmf-fe/vite-plugin-cdn-import/blob/HEAD/README.zh-CN.md
modules: ['vue'],
prodUrl: '//fastly.jsdelivr.net/npm/{name}@{version}/{path}',
enableInDevMode: true,
}),
],
define: {
$__DEV__: JSON.stringify(!isBuild),
@ -66,7 +73,7 @@ export default defineConfig(({ mode, command }) => {
},
},
build: {
sourcemap: mode !== 'production',
sourcemap: mode !== 'production' || env.VITE_SOURCE_MAP === 'true',
rollupOptions: {
output: {
// chunkFileNames: 'assets/chunk/[name]_[hash].js',