Commit 62ffd5df26e81366feb217cf53ea8defb75a9d39

Authored by 王彪总
1 parent de7f6097

业务线 小程序不用写死,从后端接口获取

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;