Commit 62ffd5df26e81366feb217cf53ea8defb75a9d39
1 parent
de7f6097
业务线 小程序不用写死,从后端接口获取
Showing
2 changed files
with
24 additions
and
12 deletions
components/work-field-form/work-field-form.vue
| @@ -6,13 +6,14 @@ | @@ -6,13 +6,14 @@ | ||
| 6 | <up-form-item :label="item.fieldName" :prop="item.fieldCode" class="form-item" | 6 | <up-form-item :label="item.fieldName" :prop="item.fieldCode" class="form-item" |
| 7 | @click="openPickerIfNeeded(item)"> | 7 | @click="openPickerIfNeeded(item)"> |
| 8 | 8 | ||
| 9 | - <!-- type 1 数值:u-number-box,最多2位小数,min=0,max取item.length --> | 9 | + <!-- type 1 数值:用可空态的输入框,避免 u-number-box 把空值显示成 1 却不回写模型(未填写会被当成已填 1) --> |
| 10 | <view v-if="item.fieldType === 1" class="number-box-wrap"> | 10 | <view v-if="item.fieldType === 1" class="number-box-wrap"> |
| 11 | - <u-number-box v-model="inspectForm[item.fieldCode]" min="1" :step="1" | ||
| 12 | - :max="item.length ? 10 ** Number(item.length) - 1 : null" | ||
| 13 | - :placeholder="`请输入${item.fieldName}${item.unit} `" @change="valChange(item)" @blur="valChange(item)" | ||
| 14 | - class="large-number-box"> | ||
| 15 | - </u-number-box> | 11 | + <view class="number-input-wrap"> |
| 12 | + <up-input v-model="inspectForm[item.fieldCode]" type="number" | ||
| 13 | + :maxlength="item.length || 10" | ||
| 14 | + :placeholder="`请输入${item.fieldName}${item.unit || ''}`" | ||
| 15 | + @blur="valChange(item)"></up-input> | ||
| 16 | + </view> | ||
| 16 | 17 | ||
| 17 | <text class="unit-text" v-if="item.unit">{{ item.unit }}</text> | 18 | <text class="unit-text" v-if="item.unit">{{ item.unit }}</text> |
| 18 | </view> | 19 | </view> |
| @@ -811,6 +812,11 @@ export default { | @@ -811,6 +812,11 @@ export default { | ||
| 811 | align-items: center; | 812 | align-items: center; |
| 812 | gap: 16rpx; | 813 | gap: 16rpx; |
| 813 | 814 | ||
| 815 | + // 输入框占满剩余宽度(原 u-number-box 自带固定宽度,换成 up-input 后需显式撑开) | ||
| 816 | + .number-input-wrap { | ||
| 817 | + flex: 1; | ||
| 818 | + } | ||
| 819 | + | ||
| 814 | .unit-text { | 820 | .unit-text { |
| 815 | font-size: 28rpx; | 821 | font-size: 28rpx; |
| 816 | color: #333; | 822 | color: #333; |
pages-sub/daily/maintain-manage/add-record.vue
| @@ -7,13 +7,14 @@ | @@ -7,13 +7,14 @@ | ||
| 7 | <up-form-item :label="item.fieldName" :prop="item.fieldCode" class="form-item" | 7 | <up-form-item :label="item.fieldName" :prop="item.fieldCode" class="form-item" |
| 8 | @click="openPickerIfNeeded(item)"> | 8 | @click="openPickerIfNeeded(item)"> |
| 9 | 9 | ||
| 10 | - <!-- type 1 数值:u-number-box,最多2位小数,min=0,max取item.length --> | 10 | + <!-- type 1 数值:用可空态的输入框,避免 u-number-box 把空值显示成 1 却不回写模型(未填写会被当成已填 1) --> |
| 11 | <view v-if="item.fieldType === 1" class="number-box-wrap"> | 11 | <view v-if="item.fieldType === 1" class="number-box-wrap"> |
| 12 | - <u-number-box v-model="inspectForm[item.fieldCode]" min="1" :step="1" | ||
| 13 | - :max="item.length ? 10 ** Number(item.length) - 1 : null" | ||
| 14 | - :placeholder="`请输入${item.fieldName}${item.unit} `" @change="valChange(item)" @blur="valChange(item)" | ||
| 15 | - class="large-number-box"> | ||
| 16 | - </u-number-box> | 12 | + <view class="number-input-wrap"> |
| 13 | + <up-input v-model="inspectForm[item.fieldCode]" type="number" | ||
| 14 | + :maxlength="item.length || 10" | ||
| 15 | + :placeholder="`请输入${item.fieldName}${item.unit || ''}`" | ||
| 16 | + @blur="valChange(item)"></up-input> | ||
| 17 | + </view> | ||
| 17 | 18 | ||
| 18 | <text class="unit-text" v-if="item.unit">{{ item.unit }}</text> | 19 | <text class="unit-text" v-if="item.unit">{{ item.unit }}</text> |
| 19 | </view> | 20 | </view> |
| @@ -1109,6 +1110,11 @@ export default { | @@ -1109,6 +1110,11 @@ export default { | ||
| 1109 | align-items: center; | 1110 | align-items: center; |
| 1110 | gap: 16rpx; | 1111 | gap: 16rpx; |
| 1111 | 1112 | ||
| 1113 | + // 输入框占满剩余宽度(原 u-number-box 自带固定宽度,换成 up-input 后需显式撑开) | ||
| 1114 | + .number-input-wrap { | ||
| 1115 | + flex: 1; | ||
| 1116 | + } | ||
| 1117 | + | ||
| 1112 | .unit-text { | 1118 | .unit-text { |
| 1113 | font-size: 28rpx; | 1119 | font-size: 28rpx; |
| 1114 | color: #333; | 1120 | color: #333; |