<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Vue之循環<component>組件時調用子組件的校驗方法實現多態

      本代碼通過Vue循環<component>組件時,調用子組件的校驗方法,實現多態,避免修改父組件,增強擴展性。

      父組件原代碼:

      <div v-for="comp in compList">
        <template v-if="comp.isShow">
          <component
            :is="compMap[comp.type]"
            :item="comp"
            :formData="formData"
            :compList="compList"
            :userInfo="userInfo"
            class="comp"
            v-if="isLoadedData && isComponentsShow"
          />
        </template>
      </div>

      由于有v-for所以新增動態ref

      <div v-for="comp in compList">
        <template v-if="comp.isShow">
          <component
            :is="compMap[comp.type]"
            :item="comp"
            :formData="formData"
            :compList="compList"
            :userInfo="userInfo"
            class="comp"
            v-if="isLoadedData && isComponentsShow"
            :ref="setDynamicRef(comp.prop)"
          />
        </template>
      </div>

      動態生成ref

      // 用于存儲動態 ref 的對象
      const dynamicComponentRefs = ref({});
      
      // 設置動態 ref 的方法
      const setDynamicRef = (prop) => {
        return (el) => {
          dynamicComponentRefs.value[prop] = el;
        };
      };

      父組件調用

      if (
        dynamicComponentRefs.value[comp.prop] &&
        comp.regExp &&
        comp.regExp !== ""
      ) {
        const res =
          dynamicComponentRefs.value[comp.prop].validateCompValue(comp);
        if (!res) {
          return;
        }
      }

      子組件定義校驗方法并暴露方法

      const validateCompValue = (comp) => {
        const val = formData.value[comp.prop];
        if (!new RegExp(comp.regExp).test(val)) {
          message.error(comp.regExpTip);
          return false;
        } else {
          return true;
        }
      };
      
      // 向外暴露方法
      defineExpose({
        validateCompValue,
      });

      即可。

      posted @ 2025-04-08 09:55  羅毅豪  閱讀(30)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 麻豆国产va免费精品高清在线| 精品亚洲国产成人性色av| 二区三区亚洲精品国产| 无遮挡粉嫩小泬久久久久久久| 国产午夜福利免费入口| 成人3d动漫一区二区三区| 国产精品中文av专线| 久久91精品牛牛| 国产亚洲精品AA片在线播放天| 国产在线98福利播放视频| 99福利一区二区视频| 高清精品一区二区三区| 亚洲最大成人av在线天堂网 | 日韩女同一区二区三区久久| 国产精品美女一区二区三| 亚洲精品无码你懂的网站| caoporn成人免费公开| 东京热tokyo综合久久精品| 亚洲国产精品一区在线看| 久久无码高潮喷水| 久久久久免费看成人影片| 免费无码又爽又刺激网站直播| 亚洲欧美高清在线精品一区二区| 久激情内射婷内射蜜桃| 久久99久国产精品66| 国产成人精品久久性色av| 精品国产免费人成在线观看| 欧美日韩精品一区二区三区高清视频| 99久久精品国产亚洲精品| 日韩少妇人妻vs中文字幕| 内射老阿姨1区2区3区4区| 国产欧美va欧美va在线| 91老肥熟女九色老女人| 精品一区二区不卡无码AV| 色爱综合另类图片av| 国产日韩av免费无码一区二区三区| 我国产码在线观看av哈哈哈网站| 国产精品成人久久电影| 99久久国产福利自产拍| 中文字幕人妻中出制服诱惑| 野花在线观看免费观看高清|