feat: 重构核心租住流程页面与交互体验
统一注册、看房、申请与入住等核心页面的视觉和流程衔接,补齐支付、签约与状态流转闭环,提升移动端操作连贯性。
This commit is contained in:
@@ -181,7 +181,8 @@
|
||||
:formData="uploadFormData"
|
||||
:max-count="6"
|
||||
:max-size="5 * 1024 * 1024"
|
||||
uploadText=""
|
||||
:uploadText="''"
|
||||
:customBtn="true"
|
||||
@on-success="onUploadSuccess"
|
||||
@on-list-change="onPhotoListChange"
|
||||
@on-remove="onRemoveImage"
|
||||
@@ -426,6 +427,25 @@ function pickReadableValue(...values) {
|
||||
return ''
|
||||
}
|
||||
|
||||
function isOpaqueCodeValue(value = '') {
|
||||
const text = String(value || '').trim()
|
||||
if (!text) {
|
||||
return false
|
||||
}
|
||||
return /^[A-Z0-9-]{12,}$/i.test(text) && !/[\u4e00-\u9fa5\s]/.test(text)
|
||||
}
|
||||
|
||||
function pickReadableLabel(...values) {
|
||||
for (let index = 0; index < values.length; index += 1) {
|
||||
const text = String(values[index] || '').trim()
|
||||
if (!text || isOpaqueCodeValue(text)) {
|
||||
continue
|
||||
}
|
||||
return text
|
||||
}
|
||||
return ''
|
||||
}
|
||||
|
||||
function safeJsonParse(value, fallback = null) {
|
||||
if (typeof value !== 'string') {
|
||||
return value || fallback
|
||||
@@ -532,18 +552,20 @@ export default {
|
||||
return 'rgba(255, 255, 255, 0.96)'
|
||||
},
|
||||
navBarBackStyle() {
|
||||
const isDarkBg = this.scrollTop < 40
|
||||
return {
|
||||
transition: 'all 0.2s ease',
|
||||
background: isDarkBg ? 'rgba(0, 0, 0, 0.2)' : 'transparent',
|
||||
borderRadius: '50%',
|
||||
width: '64rpx',
|
||||
height: '64rpx',
|
||||
background: this.scrollTop < 40 ? 'rgba(255, 255, 255, 0.82)' : 'rgba(255, 255, 255, 0.96)',
|
||||
border: '1rpx solid rgba(43, 142, 255, 0.08)',
|
||||
boxShadow: '0 10rpx 28rpx rgba(31, 76, 145, 0.10)',
|
||||
backdropFilter: 'blur(18rpx)',
|
||||
borderRadius: '20rpx',
|
||||
width: '72rpx',
|
||||
height: '72rpx',
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
justifyContent: 'center',
|
||||
marginLeft: '12rpx',
|
||||
color: isDarkBg ? '#FFFFFF' : '#000000'
|
||||
color: '#1A2233'
|
||||
}
|
||||
},
|
||||
navTitleOpacity() {
|
||||
@@ -573,7 +595,12 @@ export default {
|
||||
) || '--'
|
||||
},
|
||||
currentAreaText() {
|
||||
return pickReadableValue(this.currentOrderDetail.areaName, this.currentOrderDetail.campusName, this.currentOrderDetail.areaCode)
|
||||
return pickReadableLabel(
|
||||
this.currentOrderDetail.areaText,
|
||||
this.currentOrderDetail.areaName,
|
||||
this.currentOrderDetail.areaLabel,
|
||||
this.currentOrderDetail.campusName
|
||||
)
|
||||
},
|
||||
currentLeaseText() {
|
||||
const start = String(this.currentOrderDetail.startDate || this.currentOrderDetail.start || '').slice(0, 10)
|
||||
|
||||
Reference in New Issue
Block a user