From 9f7b6ef6db352887549eb603bb89bc13a05468c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=9A=E5=90=8D=E7=A8=8B=E5=BA=8F=E5=91=98?= <1968115437@qq.com> Date: Wed, 22 Feb 2023 09:58:38 +0800 Subject: [PATCH 1/4] 11 --- README.md | 7 ++ package.json | 205 ++++++++++++++++++++++++++------------------------- 2 files changed, 110 insertions(+), 102 deletions(-) diff --git a/README.md b/README.md index b097b94..574ff88 100644 --- a/README.md +++ b/README.md @@ -136,6 +136,13 @@ pnpm dev:h5 pnpm build:h5 ``` +- 更新依赖到最新(新手请忽略) + +```bash +pnpm up +# 打开HBuilder X alpha桌面程序-->点击上面的帮助-->历次更新说明-->获取最新版本号(如:3.7.2.20230217-alpha) +npx @dcloudio/uvm 3.7.2.20230217-alpha +``` ## Git 贡献提交规范 - 参考 [vue](https://github.com/vuejs/vue/blob/dev/.github/COMMIT_CONVENTION.md) 规范 ([Angular](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular)) diff --git a/package.json b/package.json index b045d03..d7751ac 100644 --- a/package.json +++ b/package.json @@ -1,104 +1,105 @@ { - "name": "uniapp_vue3_vite_ts", - "version": "1.1.2", - "scripts": { - "dev:app": "uni -p app", - "dev:custom": "uni -p", - "dev:h5": "uni", - "dev:h5:ssr": "uni --ssr", - "dev:mp-alipay": "uni -p mp-alipay", - "dev:mp-baidu": "uni -p mp-baidu", - "dev:mp-kuaishou": "uni -p mp-kuaishou", - "dev:mp-lark": "uni -p mp-lark", - "dev:mp-qq": "uni -p mp-qq", - "dev:mp-toutiao": "uni -p mp-toutiao", - "dev:mp-weixin": "uni -p mp-weixin", - "dev:quickapp-webview": "uni -p quickapp-webview", - "dev:quickapp-webview-huawei": "uni -p quickapp-webview-huawei", - "dev:quickapp-webview-union": "uni -p quickapp-webview-union", - "build:app": "uni build -p app", - "build:custom": "uni build -p", - "build:h5": "uni build --minify", - "build:h5:ssr": "uni build --ssr", - "build:mp-alipay": "uni build -p mp-alipay", - "build:mp-baidu": "uni build -p mp-baidu", - "build:mp-kuaishou": "uni build -p mp-kuaishou", - "build:mp-lark": "uni build -p mp-lark", - "build:mp-qq": "uni build -p mp-qq", - "build:mp-toutiao": "uni build -p mp-toutiao", - "build:mp-weixin": "uni build -p mp-weixin --minify", - "build:quickapp-webview": "uni build -p quickapp-webview", - "build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei", - "build:quickapp-webview-union": "uni build -p quickapp-webview-union", - "lint": "eslint --cache --max-warnings 0 \"src/**/*.{vue,ts}\" --fix", - "prettier": "prettier --write \"src/**/*.{js,ts,json,css,scss,vue}\"", - "prepare": "husky install" - }, - "dependencies": { - "@dcloudio/uni-app": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-app-plus": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-components": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-h5": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-i18n": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-mp-alipay": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-mp-baidu": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-mp-kuaishou": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-mp-lark": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-mp-qq": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-mp-toutiao": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-mp-weixin": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-quickapp-webview": "3.0.0-alpha-3070220230217001", - "@fortawesome/fontawesome-free": "^6.3.0", - "@iconify/iconify": "^3.1.0", - "crypto-js": "^4.1.1", - "echarts": "^5.4.1", - "lodash-es": "^4.17.21", - "luch-request": "^3.0.8", - "pinia": "^2.0.30", - "qs": "^6.11.0", - "vue": "^3.2.47", - "vue-i18n": "^9.2.2" - }, - "devDependencies": { - "@dcloudio/types": "^2.6.12", - "@dcloudio/uni-automator": "3.0.0-alpha-3070220230217001", - "@dcloudio/uni-cli-shared": "3.0.0-alpha-3070220230217001", - "@dcloudio/vite-plugin-uni": "3.0.0-alpha-3070220230217001", - "@iconify/json": "^2.2.24", - "@types/crypto-js": "^4.1.1", - "@types/lodash-es": "^4.17.6", - "@types/node": "^17.0.45", - "@types/qs": "^6.9.7", - "@typescript-eslint/eslint-plugin": "^5.52.0", - "@typescript-eslint/parser": "^5.52.0", - "@unocss/preset-icons": "^0.46.5", - "autoprefixer": "^10.4.13", - "eslint": "^8.34.0", - "eslint-config-prettier": "^8.6.0", - "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-vue": "^9.9.0", - "husky": "^8.0.3", - "lint-staged": "^13.1.2", - "mrm": "^4.1.13", - "postcss": "^8.4.21", - "prettier": "^2.8.4", - "sass": "^1.58.3", - "typescript": "^4.9.5", - "unocss": "^0.46.5", - "unocss-preset-weapp": "^0.2.5", - "unplugin-vue-components": "^0.22.12", - "vite": "^4.1.2", - "vite-plugin-eslint": "^1.8.1" - }, - "husky": { - "hooks": { - "pre-commit": "lint-staged" - } - }, - "lint-staged": { - "*.{js,jsx,vue,ts,tsx}": [ - "prettier --write", - "git add" - ] - } + "name": "uniapp_vue3_vite_ts", + "version": "1.1.2", + "scripts": { + "dev:app": "uni -p app", + "dev:custom": "uni -p", + "dev:h5": "uni", + "dev:h5:ssr": "uni --ssr", + "dev:mp-alipay": "uni -p mp-alipay", + "dev:mp-baidu": "uni -p mp-baidu", + "dev:mp-kuaishou": "uni -p mp-kuaishou", + "dev:mp-lark": "uni -p mp-lark", + "dev:mp-qq": "uni -p mp-qq", + "dev:mp-toutiao": "uni -p mp-toutiao", + "dev:mp-weixin": "uni -p mp-weixin", + "dev:quickapp-webview": "uni -p quickapp-webview", + "dev:quickapp-webview-huawei": "uni -p quickapp-webview-huawei", + "dev:quickapp-webview-union": "uni -p quickapp-webview-union", + "build:app": "uni build -p app", + "build:custom": "uni build -p", + "build:h5": "uni build --minify", + "build:h5:ssr": "uni build --ssr", + "build:mp-alipay": "uni build -p mp-alipay", + "build:mp-baidu": "uni build -p mp-baidu", + "build:mp-kuaishou": "uni build -p mp-kuaishou", + "build:mp-lark": "uni build -p mp-lark", + "build:mp-qq": "uni build -p mp-qq", + "build:mp-toutiao": "uni build -p mp-toutiao", + "build:mp-weixin": "uni build -p mp-weixin --minify", + "build:quickapp-webview": "uni build -p quickapp-webview", + "build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei", + "build:quickapp-webview-union": "uni build -p quickapp-webview-union", + "lint": "eslint --cache --max-warnings 0 \"src/**/*.{vue,ts}\" --fix", + "prettier": "prettier --write \"src/**/*.{js,ts,json,css,scss,vue}\"", + "prepare": "husky install" + }, + "dependencies": { + "@dcloudio/uni-app": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-app-plus": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-components": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-h5": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-i18n": "3.0.0-alpha-3061620230106001", + "@dcloudio/uni-mp-alipay": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-mp-baidu": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-mp-kuaishou": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-mp-lark": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-mp-qq": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-mp-toutiao": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-mp-weixin": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-quickapp-webview": "3.0.0-alpha-3070220230217001", + "@fortawesome/fontawesome-free": "^6.3.0", + "@iconify/iconify": "^3.1.0", + "crypto-js": "^4.1.1", + "echarts": "^5.4.1", + "lodash-es": "^4.17.21", + "luch-request": "^3.0.8", + "pinia": "^2.0.32", + "qs": "^6.11.0", + "vue": "^3.2.47", + "vue-i18n": "^9.2.2" + }, + "devDependencies": { + "@dcloudio/types": "^3.2.11", + "@dcloudio/uni-automator": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-cli-shared": "3.0.0-alpha-3070220230217001", + "@dcloudio/uni-stacktracey": "3.0.0-alpha-3070220230217001", + "@dcloudio/vite-plugin-uni": "3.0.0-alpha-3070220230217001", + "@iconify/json": "^2.2.24", + "@types/crypto-js": "^4.1.1", + "@types/lodash-es": "^4.17.6", + "@types/node": "^17.0.45", + "@types/qs": "^6.9.7", + "@typescript-eslint/eslint-plugin": "^5.53.0", + "@typescript-eslint/parser": "^5.53.0", + "@unocss/preset-icons": "^0.46.5", + "autoprefixer": "^10.4.13", + "eslint": "^8.34.0", + "eslint-config-prettier": "^8.6.0", + "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-vue": "^9.9.0", + "husky": "^8.0.3", + "lint-staged": "^13.1.2", + "mrm": "^4.1.13", + "postcss": "^8.4.21", + "prettier": "^2.8.4", + "sass": "^1.58.3", + "typescript": "^4.9.5", + "unocss": "^0.46.5", + "unocss-preset-weapp": "^0.2.5", + "unplugin-vue-components": "^0.22.12", + "vite": "^4.0.3", + "vite-plugin-eslint": "^1.8.1" + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, + "lint-staged": { + "*.{js,jsx,vue,ts,tsx}": [ + "prettier --write", + "git add" + ] + } } From 4f1b0df492fb3c65d505f96a6aa34d7fe9d53296 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=9A=E5=90=8D=E7=A8=8B=E5=BA=8F=E5=91=98?= <1968115437@qq.com> Date: Wed, 22 Feb 2023 11:20:41 +0800 Subject: [PATCH 2/4] =?UTF-8?q?ci:=20=E4=B8=80=E4=BA=9B=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E5=92=8C=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/extensions.json | 10 ++++++++++ .vscode/settings.json | 16 ++++++++++++---- 2 files changed, 22 insertions(+), 4 deletions(-) create mode 100644 .vscode/extensions.json diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..696747b --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,10 @@ +{ + "recommendations": [ + "CodeInChinese.EnglishChineseDictionary", // 翻译(英汉词典) + "kisstkondoros.vscode-gutter-preview", // Image 预览 + "ritwickdey.LiveServer", // 为静态和动态页面启动具有实时重载功能的本地开发服务器 + "antfu.unocss", // UnoCSS 原子化css + "esbenp.prettier-vscode", // 格式化 + ] + } + \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index 00f3cd1..f1715a1 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,13 @@ { - "editor.formatOnSave": true, //保存时格式化 - "editor.detectIndentation": false, - "editor.tabSize": 4 -} + // 参考:https://blog.csdn.net/weixin_46238462/article/details/125867532 + + "editor.defaultFormatter": "esbenp.prettier-vscode", // 定义一个默认格式化程序, 该格式化程序优先于所有其他格式化程序设置。必须是提供格式化程序的扩展的标识符。 + "editor.formatOnSave": true, //在保存时格式化文件。格式化程序必须可用,延迟后文件不能保存,并且编辑器不能关闭。 + "editor.detectIndentation": false, // 控制在基于文件内容打开文件时是否自动检测 #editor.tabSize# 和 #editor.insertSpaces#。 + "editor.tabSize": 4, + "editor.codeActionsOnSave": { + "source.fixAll": true, // 控制是否应在文件保存时运行自动修复操作。 + "source.fixAll.eslint": true, + "source.fixAll.stylelint": true + }, // 要在保存时运行的代码操作种类。 +} \ No newline at end of file From 497270cf5e7174d7d893b93b25df9d281b0a6b09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=9A=E5=90=8D=E7=A8=8B=E5=BA=8F=E5=91=98?= <1968115437@qq.com> Date: Wed, 22 Feb 2023 11:27:02 +0800 Subject: [PATCH 3/4] =?UTF-8?q?ci:=20=E4=B8=80=E4=BA=9B=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E5=92=8C=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vite.config.ts | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/vite.config.ts b/vite.config.ts index b9e5a1d..1b4c409 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -5,6 +5,49 @@ import { resolve } from 'path'; import { loadEnv } from 'vite'; import Unocss from 'unocss/vite'; +//发布时动态修改 manifest.json +// if (process.env.NODE_ENV === 'production') { +// // 读取 manifest.json ,修改后重新写入 +// const fs = require('fs'); +// const manifestPath = './src/manifest.json'; +// let Manifest = fs.readFileSync(manifestPath, { encoding: 'utf-8' }); +// function replaceManifest(path: string, value: any) { +// const arr = path.split('.'); +// const len = arr.length; +// const lastItem = arr[len - 1]; + +// let i = 0; +// let ManifestArr = Manifest.split(/\n/); + +// for (let index = 0; index < ManifestArr.length; index++) { +// const item = ManifestArr[index]; +// if (new RegExp(`"${arr[i]}"`).test(item)) ++i; +// if (i === len) { +// const hasComma = /,/.test(item); +// ManifestArr[index] = item.replace(new RegExp(`"${lastItem}"[\\s\\S]*:[\\s\\S]*`), `"${lastItem}": ${value}${hasComma ? ',' : ''}`); +// break; +// } +// } + +// Manifest = ManifestArr.join('\n'); +// } +// let Data1 = new Date().toLocaleDateString(); +// let Data2 = new Date().toLocaleTimeString(); +// let Data_ = Data1.replace(/\//g, '-') + ' ' + Data2; +// // 使用 +// replaceManifest('description', JSON.stringify(`app平台-${Data_}`)); +// replaceManifest( +// 'versionName', +// JSON.stringify( +// String(Number(JSON.parse(Manifest).versionCode) + 1) +// .split('') +// .join('.') +// ) +// ); +// replaceManifest('versionCode', JSON.stringify(String(Number(JSON.parse(Manifest).versionCode) + 1))); +// fs.writeFileSync(manifestPath, Manifest, { flag: 'w' }); +// } + // https://vitejs.cn/config/ export default ({ mode }: ConfigEnv): UserConfig => { const root = process.cwd(); From 6dade26acb160d0c3febc830c56d9a3e2e1fdc7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=9A=E5=90=8D=E7=A8=8B=E5=BA=8F=E5=91=98?= <1968115437@qq.com> Date: Wed, 22 Feb 2023 11:40:46 +0800 Subject: [PATCH 4/4] =?UTF-8?q?ci:=20=E4=B8=80=E4=BA=9B=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E5=92=8C=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 574ff88..adcf580 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,17 @@ +# 🌈 uni-app Vue3 Vite4 pinia2 TypeScript 基础框架 + +
+
+
+
+
+
+
+