fix: pre-process order userbAvatar in JS, simplify WXML image tags
Move image URL construction from WXML ternary to JS pre-processing. This ensures fixImageUrl() is properly applied before template rendering. Also reverts fixImageUrl to use API base URL (images served via backend). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -107,11 +107,11 @@ App({
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
// 修复图片路径:相对路径补全图片基地址,绝对 URL 或空值原样返回
|
// 修复图片路径:相对路径补全 baseUrl,绝对 URL 或空值原样返回
|
||||||
fixImageUrl: function (path) {
|
fixImageUrl: function (path) {
|
||||||
if (!path) return '';
|
if (!path) return '';
|
||||||
if (path.indexOf('http') === 0) return path;
|
if (path.indexOf('http') === 0) return path;
|
||||||
return this.globalData.imageBaseUrl + path;
|
return this.globalData.url + path;
|
||||||
},
|
},
|
||||||
|
|
||||||
// 获取订单状态文案
|
// 获取订单状态文案
|
||||||
|
|||||||
@@ -1,13 +1,21 @@
|
|||||||
var app = getApp();
|
var app = getApp();
|
||||||
const { request } = require('../../utils/request')
|
const { request } = require('../../utils/request')
|
||||||
|
|
||||||
|
// 处理订单列表中的图片路径
|
||||||
|
function processOrderList(list) {
|
||||||
|
return list.map(function(item) {
|
||||||
|
item.userbAvatar = app.fixImageUrl(item.userbAvatar) || '/pages/image/userimg.png';
|
||||||
|
return item;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
Page({
|
Page({
|
||||||
data: {
|
data: {
|
||||||
order_list: [],
|
order_list: [],
|
||||||
nav_type: 1,
|
nav_type: 1,
|
||||||
all: true,
|
all: true,
|
||||||
height: '',
|
height: '',
|
||||||
url: app.globalData.imageBaseUrl,
|
url: app.globalData.url,
|
||||||
statusType: ["全部", "待接单", "已接单", "服务中", "待支付", "已完成","已取消"],
|
statusType: ["全部", "待接单", "已接单", "服务中", "待支付", "已完成","已取消"],
|
||||||
status: ["", "0", "1", "2", "3","4","-2"],
|
status: ["", "0", "1", "2", "3","4","-2"],
|
||||||
currentType: 0,
|
currentType: 0,
|
||||||
@@ -55,7 +63,6 @@ Page({
|
|||||||
},
|
},
|
||||||
|
|
||||||
onShow: function () {
|
onShow: function () {
|
||||||
// 首次加载或从其他页返回刷新
|
|
||||||
if (this.data.firstLoad) {
|
if (this.data.firstLoad) {
|
||||||
this.setData({ firstLoad: false })
|
this.setData({ firstLoad: false })
|
||||||
this.getOrderList()
|
this.getOrderList()
|
||||||
@@ -87,7 +94,7 @@ Page({
|
|||||||
usercId: wx.getStorageSync('uid')
|
usercId: wx.getStorageSync('uid')
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
var list = res.rows || res.data || []
|
var list = processOrderList(res.rows || res.data || []);
|
||||||
this.setData({
|
this.setData({
|
||||||
order_list: list,
|
order_list: list,
|
||||||
pageNum: 2,
|
pageNum: 2,
|
||||||
@@ -114,7 +121,7 @@ Page({
|
|||||||
usercId: wx.getStorageSync('uid')
|
usercId: wx.getStorageSync('uid')
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
var newList = res.rows || res.data || []
|
var newList = processOrderList(res.rows || res.data || []);
|
||||||
if (this.data.pageNum === 1) {
|
if (this.data.pageNum === 1) {
|
||||||
this.setData({
|
this.setData({
|
||||||
order_list: newList,
|
order_list: newList,
|
||||||
|
|||||||
@@ -35,7 +35,7 @@
|
|||||||
<view style="height: 1rpx;background: #ECECEC;"></view>
|
<view style="height: 1rpx;background: #ECECEC;"></view>
|
||||||
<view class="details_box">
|
<view class="details_box">
|
||||||
|
|
||||||
<image src="{{(item.userbAvatar && item.userbAvatar.indexOf('http') === 0) ? item.userbAvatar : (item.userbAvatar ? url + item.userbAvatar : '/pages/image/userimg.png')}}" class="Group-image"></image>
|
<image src="{{item.userbAvatar}}" class="Group-image"></image>
|
||||||
<view style="margin-left: 31rpx;margin-top: 40rpx;">
|
<view style="margin-left: 31rpx;margin-top: 40rpx;">
|
||||||
<view class="title">{{item.userbName}}</view>
|
<view class="title">{{item.userbName}}</view>
|
||||||
<view class="detail_number">{{item.serviceTime}}天</view>
|
<view class="detail_number">{{item.serviceTime}}天</view>
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ Page({
|
|||||||
qrcode: '',
|
qrcode: '',
|
||||||
id: '',
|
id: '',
|
||||||
item: {},
|
item: {},
|
||||||
url: app.globalData.imageBaseUrl,
|
url: app.globalData.url,
|
||||||
refund: '',
|
refund: '',
|
||||||
charge_phone: '',
|
charge_phone: '',
|
||||||
refund_box: false,
|
refund_box: false,
|
||||||
@@ -86,9 +86,9 @@ Page({
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var that = this;
|
|
||||||
let item = JSON.parse(e.item);
|
let item = JSON.parse(e.item);
|
||||||
that.setData({
|
item.userbAvatar = app.fixImageUrl(item.userbAvatar) || '/pages/image/userimg.png';
|
||||||
|
this.setData({
|
||||||
item: item,
|
item: item,
|
||||||
charge_phone: item.usercPhonenumber || '',
|
charge_phone: item.usercPhonenumber || '',
|
||||||
order_id: item.orderId
|
order_id: item.orderId
|
||||||
@@ -148,6 +148,7 @@ Page({
|
|||||||
data: { orderId: this.data.order_id }
|
data: { orderId: this.data.order_id }
|
||||||
})
|
})
|
||||||
if (res.data) {
|
if (res.data) {
|
||||||
|
res.data.userbAvatar = app.fixImageUrl(res.data.userbAvatar) || '/pages/image/userimg.png';
|
||||||
this.setData({ item: res.data })
|
this.setData({ item: res.data })
|
||||||
}
|
}
|
||||||
} catch (e) {}
|
} catch (e) {}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
<view wx:if="{{item.status==8}}" class="status_msg">{{"已结算"}}</view>
|
<view wx:if="{{item.status==8}}" class="status_msg">{{"已结算"}}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="details_box">
|
<view class="details_box">
|
||||||
<image src="{{(item.userbAvatar && item.userbAvatar.indexOf('http') === 0) ? item.userbAvatar : (item.userbAvatar ? url + item.userbAvatar : '/pages/image/userimg.png')}}" binderror="onAvatarError" style="width:230rpx;height:230rpx;"></image>
|
<image src="{{item.userbAvatar || '/pages/image/userimg.png'}}" binderror="onAvatarError" style="width:230rpx;height:230rpx;"></image>
|
||||||
<view style="margin-left: 31rpx;">
|
<view style="margin-left: 31rpx;">
|
||||||
<view class="title">专业陪护服务({{item.userbName}})</view>
|
<view class="title">专业陪护服务({{item.userbName}})</view>
|
||||||
<!-- <view class="detail_number">数量x{{detail.num}}</view> -->
|
<!-- <view class="detail_number">数量x{{detail.num}}</view> -->
|
||||||
@@ -70,7 +70,7 @@
|
|||||||
<view class="contact">
|
<view class="contact">
|
||||||
<view class="contact_title">联系信息</view>
|
<view class="contact_title">联系信息</view>
|
||||||
<view style="display: flex;align-items: center;">
|
<view style="display: flex;align-items: center;">
|
||||||
<image src="{{(item.userbAvatar && item.userbAvatar.indexOf('http') === 0) ? item.userbAvatar : (item.userbAvatar ? url + item.userbAvatar : '/pages/image/userimg.png')}}" binderror="onAvatarError" style="width:94rpx;height:94rpx;border-radius:50%;margin-right:23rpx;">
|
<image src="{{item.userbAvatar || '/pages/image/userimg.png'}}" binderror="onAvatarError" style="width:94rpx;height:94rpx;border-radius:50%;margin-right:23rpx;">
|
||||||
</image>
|
</image>
|
||||||
<view>
|
<view>
|
||||||
<view style="color: #333;font-size: 28rpx;font-family: PingFang SC;font-weight: bold;">{{item.userbName}}</view>
|
<view style="color: #333;font-size: 28rpx;font-family: PingFang SC;font-weight: bold;">{{item.userbName}}</view>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Page({
|
|||||||
|
|
||||||
data: {
|
data: {
|
||||||
height: '',
|
height: '',
|
||||||
url: app.globalData.imageBaseUrl,
|
url: app.globalData.url,
|
||||||
seckill_start: '请输入开始日期',
|
seckill_start: '请输入开始日期',
|
||||||
seckill_endx: '请输入结束日期',
|
seckill_endx: '请输入结束日期',
|
||||||
time: 30 * 60 * 60 * 1000,
|
time: 30 * 60 * 60 * 1000,
|
||||||
|
|||||||
Reference in New Issue
Block a user