Просмотр исходного кода

refactor: 仿真测试自定义起终点参数输入调整为两位小数

HeWang 9 месяцев назад
Родитель
Сommit
c6af7a39e8
1 измененных файлов с 47 добавлено и 26 удалено
  1. 47 26
      src/views/AboutView.vue

+ 47 - 26
src/views/AboutView.vue

@@ -12,7 +12,7 @@
           inactive-text="否"
       />
       <div v-if="form.isRandom">
-        <el-input-number  class="mx-4" v-model="form.randomCount" :min="1" :max="10" style="margin-left: 15px; width: 100px;"/>
+        <el-input-number  class="mx-4" v-model="form.randomCount" :min="1" :max="5" style="margin-left: 15px; width: 100px;"/>
         <span style="margin-left: 10px;">次</span>
       </div>
     </el-form-item>
@@ -54,23 +54,23 @@
         <template #footer>
           <div class="dialog-footer">
             <el-form :model="startForm" label-width="auto">
-              <el-form-item style="margin-bottom: 10px" label="位置 X :" required>
-                <el-input v-model="startForm.X" />
+              <el-form-item style="margin-bottom: 10px" label="位置 X :" required >
+                <el-input-number style="width: 100%;" v-model="startForm.X" :controls="false" :precision="2" />
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="位置 Y :" required>
-                <el-input v-model="startForm.Y" />
+                <el-input-number style="width: 100%;" v-model="startForm.Y" :controls="false" :precision="2" />
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="位置 Z :">
-                <el-input v-model="startForm.Z" disabled/>
+                <el-input-number style="width: 100%;" v-model="startForm.Z" :controls="false" :precision="2" disabled/>
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="角度 R :">
-                <el-input v-model="startForm.R" disabled/>
+                <el-input-number style="width: 100%;" v-model="startForm.R" :controls="false" :precision="2" disabled/>
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="角度 P :">
-                <el-input v-model="startForm.P" disabled/>
+                <el-input-number style="width: 100%;" v-model="startForm.P" :controls="false" :precision="2" disabled/>
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="角度 H :" required>
-                <el-input v-model="startForm.H" />
+                <el-input-number style="width: 100%;" v-model="startForm.H" :controls="false" :precision="2" />
               </el-form-item>
             </el-form>
             <el-button type="primary" @click="startDialogVisible = false">确认</el-button>
@@ -88,22 +88,22 @@
           <div class="dialog-footer">
             <el-form :model="endForm" label-width="auto">
               <el-form-item style="margin-bottom: 10px" label="位置 X :">
-                <el-input v-model="endForm.X" />
+                <el-input-number style="width: 100%;" v-model="endForm.X" :controls="false" :precision="2" />
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="位置 Y :">
-                <el-input v-model="endForm.Y" />
+                <el-input-number style="width: 100%;" v-model="endForm.Y" :controls="false" :precision="2"/>
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="位置 Z :">
-                <el-input v-model="endForm.Z" disabled/>
+                <el-input-number style="width: 100%;" v-model="endForm.Z" :controls="false" :precision="2" disabled/>
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="角度 R :">
-                <el-input v-model="endForm.R" disabled/>
+                <el-input-number style="width: 100%;" v-model="endForm.R" :controls="false" :precision="2" disabled/>
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="角度 P :">
-                <el-input v-model="endForm.P" disabled/>
+                <el-input-number style="width: 100%;" v-model="endForm.P" :controls="false" :precision="2" disabled/>
               </el-form-item>
               <el-form-item style="margin-bottom: 10px" label="角度 H :">
-                <el-input v-model="endForm.H" />
+                <el-input-number style="width: 100%;" v-model="endForm.H" :controls="false" :precision="2"/>
               </el-form-item>
             </el-form>
             <el-button type="primary" @click="endDialogVisible = false">确认</el-button>
@@ -157,23 +157,43 @@ const form = reactive({
 })
 
 const startForm = reactive({
-  X: '',
-  Y: '',
-  Z: '0',
-  R: '0',
-  P: '0',
-  H: '0',
+  X: 0,
+  Y: 0,
+  Z: 0,
+  R: 0,
+  P: 0,
+  H: 0,
 })
 
 const endForm = reactive({
-  X: '',
-  Y: '',
-  Z: '0',
-  R: '0',
-  P: '0',
-  H: '0',
+  X: 0,
+  Y: 0,
+  Z: 0,
+  R: 0,
+  P: 0,
+  H: 0,
 })
 
+function validateInput(value) {
+
+  let temp = value.toString();
+  temp = temp.replace(/。/g, ".");
+  temp = temp.replace(/[^\d.]/g, "");
+  temp = temp.replace(/^\./g, "");
+  temp = temp.replace(/\.{2,}/g, "");
+  temp = temp.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
+  temp = temp.replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3");
+  inputForm.value.perfSum = temp
+}
+
+const formatToTwoDecimalPlaces = (value) => {
+  return parseFloat(value).toFixed(2); // 格式化为两位小数
+};
+
+const parseToNumber = (value) => {
+  return parseFloat(value); // 将输入值解析为数字
+};
+
 const originChange = (value: string) => {
   if (!value) {
     startDialogVisible.value = true
@@ -239,4 +259,5 @@ const goToAlgorithmEval = () => {
   router.push('/algorithm_eval')
 }
 
+
 </script>