Эх сурвалжийг харах

普通条件判断选择元素回显

duy 1 өдөр өмнө
parent
commit
228000ed88

+ 16 - 6
src/views/formula/component/funComponent/ifelse.vue

@@ -31,11 +31,11 @@
         <div class="mg-t-20 flex jc-al-c">
             <span class="textblod mg-r-20"  v-if="symbol!=='|'">IF</span>
             <div class="flex jc-al-c" v-if="symbol == '<&&<' || symbol == '<=&&<='">
-              <vue-tags-input v-model="tag1" :tags="tags1" @focus="curFocusIndex = 1" @blur="inputBlur(1)" placeholder="输入/参数" @before-adding-tag="beforeAddingTag"/>
+              <vue-tags-input v-model="tag1" :tags="tags1" @focus="curFocusIndex = 1" @blur="inputBlur(1)" placeholder="输入/参数111" @before-adding-tag="beforeAddingTag"/>
               <span v-if="symbol == '<&&<'" class="mg-l-20 mg-r-20">&lt;</span>
               <span v-if="symbol == '<=&&<='" class="mg-l-20 mg-r-20">≤</span>
             </div>
-            <vue-tags-input v-model="tag2" :tags="tags2" @focus="curFocusIndex = 2" @blur="inputBlur(2)" placeholder="输入/参数" @before-adding-tag="beforeAddingTag"/>
+            <vue-tags-input v-model="tag2" :tags="tags2" @focus="curFocusIndex = 2" @blur="inputBlur(2)" placeholder="输入/参数222" @before-adding-tag="beforeAddingTag"  @tag-clicked="handleTagClick($event,2)" ref="tagsInput2"/>
             <span class="mg-l-20 mg-r-20">
               <span v-if="symbol == '>='">≥</span>
               <span v-if="symbol == '<='">≤</span>
@@ -46,13 +46,13 @@
               <span v-if="symbol == '|'">|</span>
         
             </span>
-            <vue-tags-input v-model="tag3" :tags="tags3" @focus="curFocusIndex = 3" @blur="inputBlur(3)" placeholder="输入/参数" @before-adding-tag="beforeAddingTag"/>
+            <vue-tags-input v-model="tag3" :tags="tags3" @focus="curFocusIndex = 3" @blur="inputBlur(3)" placeholder="输入/参数" @before-adding-tag="beforeAddingTag"  @tag-clicked="handleTagClick($event,3)"  ref="tagsInput3"/>
         </div>
          <div class="flex jc-al-c mg-t-20" v-if="result == 1">
           <span class="textblod mg-r-10">真值</span>
-          <vue-tags-input v-model="tag4" :tags="tags4" @focus="curFocusIndex = 4" @blur="inputBlur(4)" placeholder="输入/参数" @before-adding-tag="beforeAddingTag" @keyup.native="btKeyUp"/>
+          <vue-tags-input v-model="tag4" :tags="tags4" @focus="curFocusIndex = 4" @blur="inputBlur(4)" placeholder="输入/参数" @before-adding-tag="beforeAddingTag" @keyup.native="btKeyUp"  @tag-clicked="handleTagClick($event,4)"  ref="tagsInput4"/>
           <span class="textblod mg-r-10 mg-l-20">假值</span>
-          <vue-tags-input v-model="tag5" :tags="tags5" @focus="curFocusIndex = 5" @blur="inputBlur(5)" placeholder="输入/参数" @before-adding-tag="beforeAddingTag" @keyup.native="btKeyUp"/>
+          <vue-tags-input v-model="tag5" :tags="tags5" @focus="curFocusIndex = 5" @blur="inputBlur(5)" placeholder="输入/参数" @before-adding-tag="beforeAddingTag" @keyup.native="btKeyUp"  @tag-clicked="handleTagClick($event,5)"  ref="tagsInput5"/>
         </div>
         <div class="mg-t-20" v-if="result == 2">
           <div class="flex">
@@ -1900,7 +1900,17 @@ export default {
     
 
     };
-  }
+  },
+  //选择元素回显处理
+    handleTagClick(info,index) {
+     console.log(info,'info');
+       const {tag}=info;
+      this.curFocusIndex = index
+      const refName = `tagsInput${this.curFocusIndex}`;
+      this.$refs[refName].focus(); // 动态获取ref并调用focus方法
+       this.$emit('clickTag',tag)
+    },
+
 
   }
 }

+ 9 - 0
src/views/formula/edit.vue

@@ -219,6 +219,7 @@
                 :isDataChange="isDataChange"
                 :dataForm="dataForm"
                 :remark="remark"
+                @clickTag="handleClickTagElse"
                 >
               </component>
                 <div class="flex1" v-show="item.showSelectEle" style="margin-top:10px;margin-bottom:30px">
@@ -2379,7 +2380,15 @@ replaceSelectedElement(newItem) {
           this.selectedTableKeyDev = keyParts.length > 1 ? 'key'+keyParts[1] : null;
       
     },
+    //逻辑判断回显元素
+    handleClickTagElse(item){
+  
+      console.log(item,'item逻辑');
+  
+              const keyParts =  item.tableElementKey.split('key');
+              this.selectedTableKeyComp = keyParts.length > 1 ? 'key'+keyParts[1] : null;
   },
+}
 
 };
 </script>