Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
inspection-pad-web
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
专网
inspection-pad-web
Commits
dc1621bf
提交
dc1621bf
authored
4月 09, 2025
作者:
JaxBBLL
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix
上级
30298de4
显示空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
79 行增加
和
63 行删除
+79
-63
index.vue
components/CommonUpload/index.vue
+79
-63
没有找到文件。
components/CommonUpload/index.vue
浏览文件 @
dc1621bf
...
@@ -67,66 +67,89 @@ export default {
...
@@ -67,66 +67,89 @@ export default {
methods
:
{
methods
:
{
// 检查并请求权限
// 检查并请求权限
async
checkAndRequestPermission
()
{
//
async checkAndRequestPermission() {
// 定义所需权限
//
// 定义所需权限
const
permissions
=
[];
//
const permissions = [];
if
(
this
.
sourceType
.
includes
(
"camera"
))
{
//
if (this.sourceType.includes("camera")) {
permissions
.
push
(
"android.permission.CAMERA"
);
// 相机权限
//
permissions.push("android.permission.CAMERA"); // 相机权限
}
//
}
if
(
this
.
sourceType
.
includes
(
"album"
))
{
//
if (this.sourceType.includes("album")) {
permissions
.
push
(
"android.permission.READ_EXTERNAL_STORAGE"
);
// 相册权限
//
permissions.push("android.permission.READ_EXTERNAL_STORAGE"); // 相册权限
}
//
}
// 检查权限状态
//
// 检查权限状态
const
hasPermission
=
await
new
Promise
((
resolve
)
=>
{
//
const hasPermission = await new Promise((resolve) => {
plus
.
android
.
requestPermissions
(
//
plus.android.requestPermissions(
permissions
,
//
permissions,
(
result
)
=>
{
//
(result) => {
let
granted
=
true
;
//
let granted = true;
for
(
let
i
=
0
;
i
<
result
.
granted
.
length
;
i
++
)
{
//
for (let i = 0; i
<
result
.
granted
.
length
;
i
++
)
{
if
(
!
result
.
granted
[
i
])
{
//
if (!result.granted[i]) {
granted
=
false
;
//
granted = false;
break
;
//
break;
}
//
}
}
//
}
resolve
(
granted
);
//
resolve(granted);
},
//
},
(
error
)
=>
{
//
(error) => {
console
.
error
(
"权限请求失败:"
,
error
.
message
);
//
console.error("权限请求失败:", error.message);
resolve
(
false
);
//
resolve(false);
}
//
}
);
//
);
});
//
});
if
(
!
hasPermission
)
{
//
if (!hasPermission) {
// 用户拒绝授权,弹出提示
//
// 用户拒绝授权,弹出提示
uni
.
showModal
({
//
uni.showModal({
title
:
"权限提示"
,
//
title: "权限提示",
content
:
//
content:
"您拒绝了必要的权限,可能导致功能无法正常使用。是否前往设置页面开启权限?"
,
//
"您拒绝了必要的权限,可能导致功能无法正常使用。是否前往设置页面开启权限?",
success
:
(
modalRes
)
=>
{
//
success: (modalRes) => {
if
(
modalRes
.
confirm
)
{
//
if (modalRes.confirm) {
// 打开应用设置页面
//
// 打开应用设置页面
plus
.
runtime
.
openURL
(
//
plus.runtime.openURL(
"app-settings://"
,
// 跳转到系统设置页面
//
"app-settings://", // 跳转到系统设置页面
(
err
)
=>
{
//
(err) => {
console
.
error
(
"跳转设置页面失败:"
,
err
.
message
);
//
console.error("跳转设置页面失败:", err.message);
}
//
}
);
//
);
}
//
}
},
//
},
});
//
});
return
false
;
//
return false;
}
//
}
return
true
;
//
return true;
},
//
},
// 选择图片
//
//
选择图片
async
chooseImage
()
{
//
async chooseImage() {
// 检查权限
//
// 检查权限
const
isAuthorized
=
await
this
.
checkAndRequestPermission
();
//
const isAuthorized = await this.checkAndRequestPermission();
if
(
!
isAuthorized
)
return
;
//
if (!isAuthorized) return;
// const count = this.maxCount - this.images.length; // 剩余可选图片数量
// uni.chooseImage({
// count: count,
// sizeType: this.sizeType,
// sourceType: this.sourceType, // 使用传递的 sourceType
// success: async (res) => {
// const tempFilePaths = res.tempFilePaths;
// for (const filePath of tempFilePaths) {
// const base64 = await this.convertFileToBase64(filePath);
// this.images.push(base64);
// }
// },
// fail: (err) => {
// console.error("选择图片失败:", err);
// uni.showToast({
// title: "选择图片失败,请重试",
// icon: "none",
// });
// },
// });
// },
// 选择图片
chooseImage
()
{
const
count
=
this
.
maxCount
-
this
.
images
.
length
;
// 剩余可选图片数量
const
count
=
this
.
maxCount
-
this
.
images
.
length
;
// 剩余可选图片数量
uni
.
chooseImage
({
uni
.
chooseImage
({
count
:
count
,
count
:
count
,
...
@@ -139,13 +162,6 @@ export default {
...
@@ -139,13 +162,6 @@ export default {
this
.
images
.
push
(
base64
);
this
.
images
.
push
(
base64
);
}
}
},
},
fail
:
(
err
)
=>
{
console
.
error
(
"选择图片失败:"
,
err
);
uni
.
showToast
({
title
:
"选择图片失败,请重试"
,
icon
:
"none"
,
});
},
});
});
},
},
// 预览图片
// 预览图片
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论