增加数字范围

main
Lufaneng 9 months ago
parent f0fc6c4c28
commit 1ae5c6cbf9

@ -97,6 +97,7 @@
<uv-input
@click="openPicker(item)"
@input="handleInputChange(item)"
@blur="validateNumberRange(item)"
:readonly="item.type === 'select' || item.name === '土建图号'"
:type="item.type === 'number' ? 'digit' : 'text'"
v-model="item.value"
@ -107,6 +108,24 @@
item.name === '土建图号' ? '将根据土建图型号自动生成' : '请输入'
"
></uv-input>
<!-- 数字范围提示 -->
<view
v-if="
item.type === 'number' &&
(item.min !== undefined || item.max !== undefined)
"
class="number-range-hint"
>
<text v-if="item.min !== undefined && item.max !== undefined">
范围{{ item.min }} - {{ item.max }}
</text>
<text v-else-if="item.min !== undefined">
最小值{{ item.min }}
</text>
<text v-else-if="item.max !== undefined">
最大值{{ item.max }}
</text>
</view>
</uv-form-item>
<!-- <uv-form-item prop="password" label="载重kg">
<uv-input
@ -302,8 +321,8 @@ const confirm = (val) => {
//
if (currentParams.value.name === "土建图型号") {
nextTick(() => {
generateDrawingNumber();
})
generateDrawingNumber();
});
}
};
@ -356,9 +375,46 @@ const cancelApply = () => {
const handleInputChange = (item) => {
//
if (item.name === "土建图型号") {
nextTick(() => {
generateDrawingNumber();
})
nextTick(() => {
generateDrawingNumber();
});
}
};
//
const validateNumberRange = (item) => {
if (item.type !== "number" || !item.value) return;
const value = parseFloat(item.value);
//
if (isNaN(value)) {
uni.showToast({
title: `${item.name}必须为数字`,
icon: "error",
});
item.value = "";
return;
}
//
if (item.min !== undefined && value < item.min) {
uni.showToast({
title: `${item.name}不能小于${item.min}`,
icon: "error",
});
item.value = item.min.toString();
return;
}
//
if (item.max !== undefined && value > item.max) {
uni.showToast({
title: `${item.name}不能大于${item.max}`,
icon: "error",
});
item.value = item.max.toString();
return;
}
};
@ -474,8 +530,8 @@ const selectTemplate = (item) => {
currentTemplate.value.params = res?.params;
//
nextTick(() => {
generateDrawingNumber();
})
generateDrawingNumber();
});
})
.finally(() => {
params_loading.value = false;
@ -687,6 +743,13 @@ onPullDownRefresh(() => {
margin-bottom: 12px;
}
}
.number-range-hint {
font-size: 12px;
color: #999;
margin-top: 4px;
padding-left: 0;
}
</style>
<style lang="scss">

Loading…
Cancel
Save