鍍金池/ 問(wèn)答/HTML/ vee-validate,如何動(dòng)態(tài)取消校驗(yàn)規(guī)則?

vee-validate,如何動(dòng)態(tài)取消校驗(yàn)規(guī)則?

在vue項(xiàng)目中,有以下場(chǎng)景一個(gè)頁(yè)面中有上傳圖片按鈕,

clipboard.png

 <label class="btn btn-success btn-xs upload" for="logoName">{{brandBaseItem ?
    'Change' : 'Upload'}}</label>
<input type="file"
       ref="logoName"
       id="logoName"
       class="hidden"
       @change="getLogoName"
       v-validate="'required|image|size:300|ext:[gif,jpeg,jpg,bmp,png]'"/>
<span class="text-primary title">{{ fileName ?  fileName : (brandBaseItem ? brandBaseItem.logoName : '')}}</span>
<p class="text-danger" v-show="!errors.has('logoName')">(only
    gif,jpeg,jpg,bmp,png,and file size no more than 300k)</p>

第一次打開(kāi)頁(yè)面的時(shí)候,保存的時(shí)候時(shí)必須輸入的,保存后,再次打開(kāi)編輯頁(yè)面,這個(gè)時(shí)候再次保存,不是必填的,請(qǐng)問(wèn)怎么修改校驗(yàn)規(guī)則?

回答
編輯回答
尛憇藌

vee-validate支持對(duì)象表示方法,修改為下面的方式就可以:

v-validate="{
   required: !(brandBaseItem && brandBaseItem.logoName),
   image: true,
   size: 300,
   ext: ['png', 'jpeg', 'jpg', 'bmp']}"
2017年10月28日 09:04
編輯回答
執(zhí)念

可以的,原來(lái)是我自己寫(xiě)了校驗(yàn)規(guī)則,沒(méi)有加上,所有 v-validate="{required: workShow==true,unitName:workShow==true}" unitName這個(gè)是自定義規(guī)則,加上就可以了

2017年9月11日 03:26