refactor:项目升级Vue3+uView Plus

- 改造入口文件、全量替换组件引入
- 过滤器迁移混入,更新忽略配置,新增迁移文档
This commit is contained in:
lifenlong
2026-06-06 22:51:10 +08:00
parent d5663cfb4d
commit f4337fd030
269 changed files with 1956 additions and 42350 deletions

View File

@@ -1,7 +1,7 @@
import { logout, logoffConfirm } from "@/api/login";
import { getUserInfo } from "@/api/members";
import storage from "@/utils/storage.js";
import Vue from "vue";
import config from "@/config/config";
import Foundation from "./Foundation.js";
/**
* 金钱单位置换 2999 --> 2,999.00
@@ -347,7 +347,7 @@ export function quiteLoginOut () {
uni.showModal({
title: "提示",
content: "是否退出登录?",
confirmColor: Vue.prototype.$mainColor,
confirmColor: config.mainColor,
async success (res) {
if (res.confirm) {
storage.setAccessToken("");
@@ -369,7 +369,7 @@ export function logoff () {
uni.showModal({
title: "提示",
content: "确认注销用户么?注销用户将无法再次登录并失去当前数据。",
confirmColor: Vue.prototype.$mainColor,
confirmColor: config.mainColor,
async success (res) {
if (res.confirm) {
await logoffConfirm();
@@ -406,7 +406,7 @@ export function tipsToLogin (type) {
content: "当前用户未登录是否登录?",
confirmText: "确定",
cancelText: "取消",
confirmColor: Vue.prototype.$mainColor,
confirmColor: config.mainColor,
success: (res) => {
if (res.confirm) {
navigateToLogin();

16
utils/mpShare.js Normal file
View File

@@ -0,0 +1,16 @@
export default {
onLoad() {
if (!uni.$u) {
uni.$u = {}
}
uni.$u.mpShare = {
title: '',
path: '',
imageUrl: ''
}
this.$u.mpShare = uni.$u.mpShare
},
onShareAppMessage() {
return this.$u.mpShare || uni.$u.mpShare
}
}

61
utils/uploadHelper.js Normal file
View File

@@ -0,0 +1,61 @@
import storage from "@/utils/storage.js";
import { upload as uploadUrl } from "@/api/common.js";
export function getUploadHeader() {
return { accessToken: storage.getAccessToken() };
}
export function getUploadedUrls(fileList) {
return fileList
.filter((item) => item.status === "success" && item.url)
.map((item) => item.url);
}
/**
* uView Plus u-upload @afterRead handler for lilishop upload API.
* Backend returns { result: "fileUrl", ... }.
*/
export function handleUploadAfterRead(event, fileList, onSuccess) {
const files = [].concat(event.file);
files.forEach((file) => {
const index = fileList.length;
fileList.push({
...file,
status: "uploading",
message: "上传中",
});
uni.uploadFile({
url: uploadUrl,
filePath: file.url,
name: "file",
header: getUploadHeader(),
success: (res) => {
try {
const data = JSON.parse(res.data);
fileList.splice(index, 1, {
...fileList[index],
status: "success",
message: "",
url: data.result,
});
if (onSuccess) {
onSuccess(getUploadedUrls(fileList));
}
} catch (e) {
fileList.splice(index, 1, {
...fileList[index],
status: "failed",
message: "上传失败",
});
}
},
fail: () => {
fileList.splice(index, 1, {
...fileList[index],
status: "failed",
message: "上传失败",
});
},
});
});
}