diff --git a/components/common_card.vue b/components/common_card.vue index 78c1e66..68b4b5c 100644 --- a/components/common_card.vue +++ b/components/common_card.vue @@ -5,13 +5,13 @@ 点击上传身份证人像面 点击上传身份国旗面 @@ -24,7 +24,7 @@ - {{ item.title }}111 + {{ item.title }} @@ -72,54 +72,61 @@ export default { }; }, watch: { - Fimg(p, r) { - if (p) { - this.fileListZ = { accessUrl: p }; - } + Fimg: { + handler(p) { + if (p) { + this.fileListZ = { accessUrl: p }; + } + }, + immediate: true }, - Bimg(p, r) { - if (p) { - this.fileListF = { accessUrl: p }; - } + Bimg: { + handler(p) { + if (p) { + this.fileListF = { accessUrl: p }; + } + }, + immediate: true }, }, methods: { - deletePic(event) { - this.fileListZ.splice(event.index, 1); - }, phoneFun(type) { - let that = this; - console.log('aaaaaaa') - /*#ifdef MP*/ - uni.chooseMedia({ - count: 1, // 默认为1,摄像头拍照为1,录像为10,录音为1 - mediaType: ['image'], // 可以指定是摄像头还是录像,这里两者都支持 - sourceType: ['camera'], // 可以指定来源是相册还是相机,这里只选相机 - camera: 'back', // 可以指定使用前置还是后置摄像头,默认后置 - success: (imgRes) => { - // 成功则返回文件的本地临时文件路径 - const filePath = imgRes.tempFiles[0].tempFilePath; // 获取文件路径 - that.uploadFile(filePath, type); + const that = this; + // #ifdef MP-WEIXIN + if (uni.chooseMedia) { + uni.chooseMedia({ + count: 1, + mediaType: ['image'], + sourceType: ['album', 'camera'], + camera: 'back', + success: (imgRes) => { + if (imgRes.tempFiles && imgRes.tempFiles.length > 0) { + const filePath = imgRes.tempFiles[0].tempFilePath; + that.uploadFile(filePath, type); + } + }, + fail: (err) => { + console.error('chooseMedia error:', err); + } + }); + return; + } + // #endif + + uni.chooseImage({ + count: 1, + sizeType: ['original', 'compressed'], + sourceType: ['album', 'camera'], + success: (res) => { + if (res.tempFilePaths && res.tempFilePaths.length > 0) { + const filePath = res.tempFilePaths[0]; + that.uploadFile(filePath, type); + } }, fail: (err) => { - // 处理错误 - console.error(err); + console.error('chooseImage error:', err); } }); - /*#endif*/ - /*#ifndef MP*/ - uni.chooseImage({ - count: 1, // 默认9,设置图片的数量 - sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 - sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有 - success: function (res) { - // 成功选择图片后 - const filePath = res.tempFilePaths[0]; // 获取文件路径 - that.uploadFile(filePath, type); - } - }); - /*#endif*/ - }, uploadFile(url, type) { uni.showLoading({ @@ -140,18 +147,23 @@ export default { 'HSM-AUTH': token ? token : '', }, success: (uploadFileRes) => { - const data = JSON.parse(uploadFileRes.data); - if (data.bizcode === 100) { + let data; + try { + data = JSON.parse(uploadFileRes.data); + } catch (e) { + data = uploadFileRes.data; + } + if (data && data.bizcode === 100) { if (type === "Z") { that.fileListZ = data.data; - this.$emit("valueFunc", "Z", data.data.dbUrl); + that.$emit("valueFunc", "Z", data.data.dbUrl); } else if (type === "F") { that.fileListF = data.data; - this.$emit("valueFunc", "F", data.data.dbUrl); + that.$emit("valueFunc", "F", data.data.dbUrl); } } else { uni.showToast({ - title: '图片上传失败', + title: (data && data.msg) || '图片上传失败', icon: 'none', mask: true, duration: 3000, diff --git a/pages/login_package/news_info/news_info.vue b/pages/login_package/news_info/news_info.vue index 2ad329c..977a787 100644 --- a/pages/login_package/news_info/news_info.vue +++ b/pages/login_package/news_info/news_info.vue @@ -6,7 +6,8 @@ {{ newsDetail.title }} - + {{ newsDetail.name }} @@ -14,14 +15,17 @@ {{ formatDate(newsDetail.ctdate) }} - + {{ newsDetail.browses }} - + + + @@ -38,6 +42,23 @@ export default { newsDetail: {} } }, + computed: { + formattedContent() { + if (!this.newsDetail || !this.newsDetail.content) return ''; + let content = this.newsDetail.content; + // 兼容小程序富文本:给所有 img 注入自适应宽度样式,避免原图过大导致横向滚动 + content = content.replace(/]*>/gi, (match) => { + if (/style\s*=\s*["'][^"']*["']/i.test(match)) { + return match.replace(/style\s*=\s*(["'])([^"']*)\1/i, (m, quote, val) => { + return `style=${quote}${val};max-width:100% !important;height:auto !important;display:block;margin:10rpx auto;${quote}`; + }); + } else { + return match.replace(/