xiaohaizhao 11 mesi fa
parent
commit
f4d904b786

+ 18 - 6
pages/index/collect/modules/customMade/index.js

@@ -76,17 +76,29 @@ Component({
       } = e.currentTarget.dataset;
       wx.hideToast()
       item.tips = '';
-      item.value = (e.detail.value - 0).toFixed(item.decimalplaces);
-      if (item.value > item.max) item.tips = `自定义${item.label}超出可选范围!`;
+      item.value = e.detail.value;
+      if (item.decimalplaces && item.value.includes(".") && item.value.split(".")[1].length > item.decimalplaces) item.tips = `自定义${item.label}仅允许${item.decimalplaces}位小数!`
+      if (item.value > item.max) {
+        item.tips = `自定义${item.label}超出可选范围!`
+        wx.showToast({
+          title: item.tips,
+          icon: "none"
+        })
+      }
       if (item.value < item.min) item.tips = `自定义${item.label}少于可选范围!`;
+      this.setData({
+        [`list[${index}]`]: item
+      })
+    },
+    valueBlur(e) {
+      const {
+        index,
+        item
+      } = e.currentTarget.dataset;
       if (item.tips) wx.showToast({
         title: item.tips,
         icon: "none"
       })
-
-      this.setData({
-        [`list[${index}]`]: item
-      })
     }
   }
 })

+ 2 - 2
pages/index/collect/modules/customMade/index.wxml

@@ -13,8 +13,8 @@
 	</block>
 	<view class="stepper-box external-custom-stepper-box" wx:elif="{{item.type=='自定义'}}">
 	
-		<input class="custom-input" wx:if="{{item.decimalplaces==0}}" type='number' value="{{item.value}}" placeholder="0" data-item="{{item}}" data-index="{{index}}" bindinput='valueChange' />
-		<input class="custom-input" wx:else type='number' value="{{item.value}}" placeholder="0" type='digit' data-item="{{item}}" data-index="{{index}}" bindinput='valueChange' />
+		<input class="custom-input" wx:if="{{item.decimalplaces==0}}" type='number' value="{{item.value}}" placeholder="0" data-item="{{item}}" data-index="{{index}}" bindblur="valueBlur" bindinput='valueChange' />
+		<input class="custom-input" wx:else type='number' value="{{item.value}}" placeholder="0" type='digit' data-item="{{item}}" data-index="{{index}}" bindblur="valueBlur" bindinput='valueChange' />
 
 		<view class="explain external-explain">{{item.min+'mm ~ '+ item.max}}mm,<text wx:if="{{item.decimalplaces}}">保留{{item.decimalplaces}}位小数</text><text wx:else>不保留小数</text></view>
 	</view>