解決Element-u的 el-form 使用 v-if校驗失靈問題


解決Element-u的 el-form 使用 v-if校驗失靈問題

element-ui 的校驗過程中,鑒於使用自帶的校驗方式,繁瑣且麻煩,因而使用了 element-ui-verify 的插件。但是現在碰到一個新的問題,不知道具體是哪塊問題,看了兩個的源碼,想使用 element-ui 自帶的 addFields 時,無法生效,因而是內部方法,外部無法拿到 【此處先記一筆,看看后期這塊是否是解決的要點】。

主要出現的問題是,使用了 v-if 時,導致無法有效被 element-ui 知曉,而報 [Element Warn]please pass correct props! ,意思就是說使用 v-if 的字段無法及時被收錄。而這個是概率問題,有時候可以有時候不行。目前還無法有效判斷出來。

<template v-if="editMobile">
   <el-row type="flex" :gutter="2" v-if="editMobile">
     <el-col :span="20">
        <el-form-item
           ref="captcha"
           label="驗證碼:"
           prop="captcha"
           verify
          :length="4"
         >
           <el-input v-model="form.captcha" placeholder="可以點擊圖片更換驗證碼" class="personal-input__append">
             <template slot="append">
               <img :src="captchaUrl" alt="驗證碼" @click="createCaptchaUrl">
             </template>
           </el-input>
         </el-form-item>
      </el-col>
   </el-row>
</template>

使用 v-if="editMobile" 時,有時作用在 template 時,校驗馬上生效,而自己又不像這樣,因而放在 el-form-item 上時,可以有效避開,但是卻會在校驗時,報上訴錯誤。這塊還真有必要好好糾結一番了

經過查證發現需要給 v-if 的元素添加唯一鍵 key 即可解決

參考資料


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM