合并代码

This commit is contained in:
sx 2025-01-09 09:06:53 +08:00
parent 16e7531f7d
commit 27cf489cbc
4 changed files with 49 additions and 34 deletions

View File

@ -580,36 +580,34 @@ const util = {
* @param {Array} obj.sourceType ['album', 'camera'] * @param {Array} obj.sourceType ['album', 'camera']
* @param {Function} obj.success 执行成功返回的方法return修改的对象 * @param {Function} obj.success 执行成功返回的方法return修改的对象
*/ */
upload_image(obj) { upload_image(obj) { // 格式化默认值
// 格式化默认值
// 图片计数 // 图片计数
const count = obj.count ? obj.count : 8 const count = obj.count ? obj.count : 8;
// 多张图片 // 多张图片
if (!obj.type) obj.type = 2 if (!obj.type) obj.type = 2;
// 操作对象 // 操作对象
if (obj.value != '' && obj.value == undefined && obj.value == null) obj.value = obj.type == 1 ? '' : [] // 修正逻辑判断
if (obj.value == '' || obj.value == undefined || obj.value == null) obj.value = obj.type == 1 ? '' : [];
// 判断剩余图片上传个数 // 判断剩余图片上传个数
if (obj.value.length >= count && obj.type == 2) { if (obj.value.length >= count && obj.type == 2) {
// 弹窗提示 // 弹窗提示
util.alert('上传图片已达上限') util.alert('上传图片已达上限');
return return;
} }
let sourceType = ['album', 'camera']
// 选择图片 // 选择图片
uni.chooseImage({ uni.chooseImage({
// 限制图片 // 限制图片
count: obj.type == 1 ? 1 : count - obj.value.length, count: obj.type == 1 ? 1 : count - obj.value.length,
sourceType: obj.sourceType || sourceType, sourceType: obj.sourceType || ['album', 'camera'],
success: (rs) => { success: (rs) => {
// 遍历图片返回列表 // 遍历图片返回列表
rs.tempFiles.forEach(item => { rs.tempFiles.forEach(item => {
// 限制大小 // 限制大小
let size = 1024 * 1024 * util.config.img_size let size = 1024 * 1024 * util.config.img_size;
if (item.size > size && !obj.unlimited) { if (item.size > size && !obj.unlimited) {
util.alert(`大小超过${util.config.img_size}m`) util.alert(`大小超过${util.config.img_size}m`);
return return;
} }
// 调用上传图片 // 调用上传图片
util.upload({ util.upload({
@ -618,29 +616,29 @@ const util = {
success(res) { success(res) {
// 上传成功 // 上传成功
if (res.code === 200) { if (res.code === 200) {
const result = res.data.url const result = res.data.url;
// 补全路径赋值 // 补全路径赋值
if (obj.type == 2) { if (obj.type == 2) {
obj.value.push(result) obj.value.push(result);
} else if (obj.type == 1) { } else if (obj.type == 1) {
obj.value = result obj.value = result;
} }
obj.success && obj.success({ obj.success && obj.success({
value: result, value: result,
}) });
return return;
} }
util.alert(rs.msg) util.alert(rs.msg);
}, },
}) });
}) });
}, },
fail(rs) { fail(rs) {
if (rs.errMsg == "chooseImage:fail cancel") { if (rs.errMsg == "chooseImage:fail cancel") {
// 取消选择 // 取消选择
} }
}, },
}) });
}, },
/** /**

View File

@ -151,7 +151,7 @@
// //
if (list.total <= list.data.length) return if (list.total <= list.data.length) return
getHistory({ getHistory({
param: list.data[0].id msgId: list.data[0].id
}) })
} }
@ -246,7 +246,7 @@
// //
function onContentScroll(ev) { function onContentScroll(ev) {
if (ev.scrollTop == 0) getMoreHistroy() if (ev.scrollTop == 50) getMoreHistroy()
debounce(() => { debounce(() => {
top.value = ev.detail.scrollTop top.value = ev.detail.scrollTop
}) })
@ -275,10 +275,7 @@
* @param {Object} message 消息对象 * @param {Object} message 消息对象
*/ */
function handlePlusSend(message) { function handlePlusSend(message) {
console.log('handlePlusSend', message) sendMsg(message)
sendMsg({
message,
})
} }
/** /**

View File

@ -130,6 +130,7 @@
// //
takePhoto: () => { takePhoto: () => {
console.log('takePhoto')
sendMsgImg({ sendMsgImg({
sourceType: ['album'], sourceType: ['album'],
}) })
@ -137,6 +138,7 @@
// //
chooseImage: () => { chooseImage: () => {
console.log('chooseImage')
sendMsgImg({ sendMsgImg({
sourceType: ['album'], sourceType: ['album'],
}) })
@ -145,10 +147,25 @@
// //
function sendMsgImg(option) { function sendMsgImg(option) {
util.upload_image({
count: 1,
type: 1,
success: rs => {
emit('send', {
query: {
toUserId: props.msg.id,
msgType: TencentCloudChat.TYPES.MSG_IMAGE,
},
data: {
imgUrl: rs.value
},
})
}
})
return
// //
uni.chooseImage({ uni.chooseImage({
count: 1, count: 1,
sizeType: ['original', 'compressed'], //
sourceType: option.sourceType, // sourceType: option.sourceType, //
success: (res) => { success: (res) => {
let message = uni.$chat.createImageMessage({ let message = uni.$chat.createImageMessage({
@ -161,7 +178,6 @@
console.log('file uploading:', event) console.log('file uploading:', event)
} }
}) })
emit('send', message)
return return
} }
}); });

View File

@ -15,22 +15,26 @@ export default defineConfig({
}, },
"/user": { "/user": {
// target: "http://192.168.0.129:8080", // target: "http://192.168.0.129:8080",
target: "http://192.168.1.199:8080", // target: "http://192.168.1.199:8080",
target: "http://192.168.0.133:8080",
changeOrigin: true, changeOrigin: true,
}, },
"/coreplay": { "/coreplay": {
// target: "http://192.168.0.129:8080", // target: "http://192.168.0.129:8080",
target: "http://192.168.1.199:8080", // target: "http://192.168.1.199:8080",
target: "http://192.168.0.133:8080",
changeOrigin: true, changeOrigin: true,
}, },
"/file": { "/file": {
// target: "http://192.168.0.129:8080", // target: "http://192.168.0.129:8080",
target: "http://192.168.1.199:8080", // target: "http://192.168.1.199:8080",
target: "http://192.168.0.133:8080",
changeOrigin: true, changeOrigin: true,
}, },
"/video": { "/video": {
// target: "http://192.168.0.129:8080", // target: "http://192.168.0.129:8080",
target: "http://192.168.1.199:8080", // target: "http://192.168.1.199:8080",
target: "http://192.168.0.133:8080",
changeOrigin: true, changeOrigin: true,
}, },
} }