最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

聊聊vue 中的v-on參數(shù)問題

 更新時間:2021年01月29日 09:49:12   作者:Firoly  
這篇文章主要介紹了聊聊vue 中的v-on參數(shù)問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

vue中v-on:clock的使用

最近在學(xué)習(xí)vue.js框架。記下其中遇到的一些問題,以便以后查閱。

首先,這是一個頁面(為了便于觀察,將各個標簽都一一著色):

其中html代碼:

<div class="groupbody ">
   <ul class="list ">
     <li v-for="cell in todo.groupbody " class="pagegroupcell " v-on:click="exchange($event)">
       <div class="pagecelltext ">{{ cell.left }}</div>
       <div class="pagecellmin">{{ cell.min }}</div>
       <img src="img/images/direction/right.png" style="width: 20px;height: 30px;float: right;margin-top: 5px;">
       <div class="pagecellmsg ">{{ cell.right }}</div> 
      </li>
    </ul>
    <div class="clear "></div>
</div>

js部分的代碼:

exchange: function (event) {
            alert("開始執(zhí)行方法");
            var a = event.target;
            var cellimg = a.getElementsByTagName("div")[0];
            var msg = cellimg.innerText; 
            page2datas.todos[0].groupheader = msg;
            alert("方法執(zhí)行中"); 
            var b = document.getElementById("page1");
            b.style.display = "none";
            var c = document.getElementById("page2");
            c.style.display = "block";
            alert("方法執(zhí)行結(jié)束");
          }

這時候如果點擊cell中有顏色的區(qū)域(即點擊li標簽的字標簽的時候),只有第一個alert( )方法執(zhí)行,而后面的兩個方法并不執(zhí)行。

原因就是這個方法的參數(shù)event:

如果標簽綁定的方法中有參數(shù)$event,這時候就可以利用event.target,獲取到當前點被綁定這個點擊事件的標簽。

但是這個參數(shù)也可能會造成一些問題,比如如果想不論點擊li標簽的哪一個部分都要把點擊事件的方法執(zhí)行完整,這時候參數(shù)event就不適用了。這時候只能另想其他辦法。

解決方法:

在li中有v-for循環(huán),其中有一個cell對象,這個對象居居士li標簽中的數(shù)據(jù)。只需要把這個對象傳遞給點擊事件的方法,就可以通過這個對象去實現(xiàn)剛才想要達到的目的。

修改之后的html代碼:

<div class="groupbody ">
   <ul class="list ">
     <li v-for="cell in todo.groupbody " class="pagegroupcell " v-on:click="exchange(cell)">
       <div class="pagecelltext ">{{ cell.left }}</div>
       <div class="pagecellmin">{{ cell.min }}</div>
       <img src="img/images/direction/right.png" style="width: 20px;height: 30px;float: right;margin-top: 5px;">
       <div class="pagecellmsg ">{{ cell.right }}</div> 
      </li>
    </ul>
    <div class="clear "></div>
</div>

修改之后的js代碼:

 exchange: function (cell) {
        alert("開始執(zhí)行方法"); 
        page2datas.todos[0].groupheader =cell.left;
        alert("執(zhí)行中");
        var b = document.getElementById("page1");
        b.style.display = "none";
        var c = document.getElementById("page2");
        c.style.display = "block";
        alert("方法執(zhí)行結(jié)束");
      }

這時候,整個電擊事件的執(zhí)行方法都可以完整執(zhí)行下來,后續(xù)頁面的切換也可以完成。

補充:Vue中關(guān)于v-on綁定點擊事件時候的參數(shù)問題

v-on的綁定點擊事件的時候關(guān)于參數(shù)有三種情況,分別如下 :

綁定的方法后面沒有括號

 <button @click="btnClick">點擊</button>
 <script>
 const app = new Vue({
  methods:{
  btnClick(event){
  // 此時event就是當前點擊的對象
   console.log(event)
  }
  }
 })
 </script>

綁定的方法后面有括號

<button @click="btnClick()">點擊</button>
<script>
 const app = new Vue({
 methods:{
  btnClick(event){
  // 此時event是undefined
  console.log(event)
  }
 }
 })
</script>

綁定的方法后面有括號,需要傳遞參數(shù)

<button @click="btnClick(123)">點擊</button>
<script>
 const app = new Vue({
 methods:{
  btnClick(event){
  // 此時event是123
  console.log(event)
  }
 }
 })
</script>

綁定的方法后面有括號,需要傳遞參數(shù),并且需要當前點擊的對象

<!-- 這種情況下,如果需要傳遞當前點擊的對象,參數(shù)必須是$event -->
<!-- 第一個位置如果要傳數(shù)字的話,就不需要加引號,如果要傳一個字符串的話,就必須要加引號,因為如果不加引號,Vue就會當做一個變量來解析,此時如果在data中沒有定義的話,就會報錯 -->
<button @click="btnClick(123,$event)">點擊</button>
<script>
 const app = new Vue({
 methods:{
  btnClick(num,event){
  // 此時num是123,event是當前點擊的對象,
  console.log(num,event)
  }
 }
 })
</script>

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • vue中的依賴注入provide和inject簡單介紹

    vue中的依賴注入provide和inject簡單介紹

    這篇文章主要介紹了vue中的依賴注入provide和inject簡單介紹,provide 選項允許我們指定我們想要提供給后代組件的數(shù)據(jù)/方法,本文通過組價刷新的案列給大家詳細講解,需要的朋友可以參考下
    2022-11-11
  • vite+vue3中如何使用router

    vite+vue3中如何使用router

    這篇文章主要介紹了vite+vue3中如何使用router問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • vue+node實現(xiàn)圖片上傳及預(yù)覽的示例方法

    vue+node實現(xiàn)圖片上傳及預(yù)覽的示例方法

    這篇文章主要介紹了vue+node實現(xiàn)圖片上傳及預(yù)覽的示例方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • vue實現(xiàn)圖形驗證碼

    vue實現(xiàn)圖形驗證碼

    這篇文章主要為大家詳細介紹了vue實現(xiàn)圖形驗證碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • vue實現(xiàn)購物車拋物線小球動畫效果的方法詳解

    vue實現(xiàn)購物車拋物線小球動畫效果的方法詳解

    這篇文章主要介紹了vue實現(xiàn)購物車拋物線小球動畫效果的方法,結(jié)合實例形式較為詳細的分析了vue.js實現(xiàn)拋物線動畫效果購物車功能相關(guān)原理與操作注意事項,需要的朋友可以參考下
    2019-02-02
  • Vue3監(jiān)聽屬性與Computed的區(qū)別詳解

    Vue3監(jiān)聽屬性與Computed的區(qū)別詳解

    在 Vue 3 中,watch 和 computed 都是非常重要的概念,它們都可以用于觀察和響應(yīng)數(shù)據(jù)的變化,但在使用場景和原理上存在明顯的區(qū)別,本文將詳細解析 Vue 3 中監(jiān)聽屬性 (watch) 和計算屬性 (computed) 的區(qū)別,需要的朋友可以參考下
    2024-02-02
  • vue 實現(xiàn)把路由單獨分離出來

    vue 實現(xiàn)把路由單獨分離出來

    這篇文章主要介紹了vue 實現(xiàn)把路由單獨分離出來,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue實現(xiàn)一個6個輸入框的驗證碼輸入組件功能的實例代碼

    vue實現(xiàn)一個6個輸入框的驗證碼輸入組件功能的實例代碼

    這篇文章主要介紹了vue實現(xiàn)一個6個輸入框的驗證碼輸入組件功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • vue實現(xiàn)拖拽效果

    vue實現(xiàn)拖拽效果

    這篇文章主要為大家詳細介紹了vue實現(xiàn)拖拽效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • Vue實現(xiàn)Base64轉(zhuǎn)png、jpg圖片格式

    Vue實現(xiàn)Base64轉(zhuǎn)png、jpg圖片格式

    這篇文章主要給大家介紹了關(guān)于Vue實現(xiàn)Base64轉(zhuǎn)png、jpg圖片格式的相關(guān)資料,前段獲取生成的是base64圖片,需要轉(zhuǎn)化為jpg,png,需要的朋友可以參考下
    2023-09-09

最新評論

安西县| 醴陵市| 岢岚县| 师宗县| 德令哈市| 卢湾区| 治多县| 响水县| 锦屏县| 志丹县| 灵宝市| 甘肃省| 阳城县| 安徽省| 天长市| 蒙山县| 南平市| 杭锦后旗| 隆林| 固原市| 手游| 乌兰察布市| 嵩明县| 江城| 桑植县| 盐山县| 武宁县| 吉水县| 罗甸县| 临夏市| 建昌县| 凤山县| 长子县| 龙口市| 太谷县| 嘉义县| 肥西县| 仙居县| 荥阳市| 鄱阳县| 墨玉县|