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

vue中的this.$refs,this.$emit,this.$store,this.$nextTick的使用方式

 更新時間:2024年04月18日 11:02:34   作者:raoxiaoya  
這篇文章主要介紹了vue中的this.$refs,this.$emit,this.$store,this.$nextTick的使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

this.$refs,this.$emit,this.$store,this.$nextTick的使用

this.$store

是vue用到了狀態(tài)管理工具 vuex,就是一個保存全局數(shù)據(jù)的庫。

this.$nextTick()

官方解釋:

在下次 DOM 更新循環(huán)結束之后執(zhí)行延遲回調。

有些操作(比如 this.$refs)需要在確保DOM被渲染完成后才能調用成功,這樣就需要寫在 this.$nextTick() 里面了。

this.$refs

我們在標簽或者組件上定義 ref屬性,比如在el-form上定義 ref="form1",這樣我們就可以使用this.$refs.form1.validate(...)來訪問這個組件中定義的屬性和方法,因為 Element-ui 為 el-form 定義了 validate 方法。

1、如果ref名稱是動態(tài)的呢,即 this.$refs.refName ,而 refName 是個變量(比如函數(shù)的參數(shù)),此時需要使用中括號,即 this.$refs.[refName].xxx

2、如果使用的:ref="xxx"來定義的,則應該是 this.$refs.[refName][0].xxx

3、ref 是在渲染完成之后才會有的,因此在調用 this.$refs.refName.xxx 的時候要確保 refName 這個DOM已經(jīng)被渲染出來了,最典型的就是 ueditor,我們需要在它被渲染出來之后才能去調用組件的 set 方法去填充編輯器的內(nèi)容,但是你并不知道它什么時候能渲染成功,只能使用延遲的方式,比如 this.$nextTick(() => {}),或者 window.setTimeout(() => {}, 500)

4、同樣的,由于 this.$refs 不是響應式的,如果通過它來訪問標簽或組件的屬性,需要在 this.$nextTick(() => {}) 之內(nèi)。

this.$emit

this.$emit()主要用于子組件像父組件傳遞事件與參數(shù)。

上面說到,父組件可以使用 this.$refs 訪問子組件;這里的 this.$emit 就是子組件用來觸發(fā)父組件的事件。

<body>
<div id="counter-event-example">
    <p>{{ total }}</p>
    <button-counter v-on:increment="incrementTotal"></button-counter>
</div>
</body>

<script>
    Vue.component('button-counter', {
        template: '<button v-on:click="increment">{{ counter }}</button>',
        data: function () {
            return {
                counter: 0
            }
        },
        methods: {
            increment: function () {
                this.counter += 1;
                this.$emit('increment', "參數(shù)"); // increment 是自定義的事件
            }
        }
    });
    new Vue({
        el: '#counter-event-example',
        data: {
            total: 0
        },
        methods: {
            incrementTotal: function (e) {
                this.total += 1;
                console.log(e);
            }
        }
    })
</script>

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Vue組件封裝方案實現(xiàn)淺析

    Vue組件封裝方案實現(xiàn)淺析

    這篇文章主要介紹了Vue組件封裝方案實現(xiàn),我們將從分析組件封裝的優(yōu)勢開始,然后依次介紹 vue.js 的基本概念,以及如何創(chuàng)建、封裝和使用自定義組件
    2023-03-03
  • 詳解Vue路由自動注入實踐

    詳解Vue路由自動注入實踐

    這篇文章主要介紹了詳解Vue路由自動注入實踐,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • vue3中如何使用iframe嵌入vue2頁面

    vue3中如何使用iframe嵌入vue2頁面

    這篇文章主要介紹了vue3中如何使用iframe嵌入vue2頁面問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • vue中路由的前進和后退問題

    vue中路由的前進和后退問題

    這篇文章主要介紹了vue中路由的前進和后退問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • electron+vue?實現(xiàn)靜默打印功能

    electron+vue?實現(xiàn)靜默打印功能

    這篇文章主要介紹了electron+vue?實現(xiàn)靜默打印功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • Vue?Router4路由導航守衛(wèi)實例全面解析

    Vue?Router4路由導航守衛(wèi)實例全面解析

    這篇文章主要為大家介紹了Vue?Router4路由導航守衛(wèi)實例全面解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • 詳解Vue.js中引入圖片路徑的幾種方式

    詳解Vue.js中引入圖片路徑的幾種方式

    這篇文章主要介紹了Vue.js中引入圖片路徑的幾種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-06-06
  • vue實現(xiàn)帶復選框的樹形菜單

    vue實現(xiàn)帶復選框的樹形菜單

    這篇文章主要為大家詳細介紹了vue實現(xiàn)帶復選框的樹形菜單,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 在vue中使用防抖和節(jié)流,防止重復點擊或重復上拉加載實例

    在vue中使用防抖和節(jié)流,防止重復點擊或重復上拉加載實例

    今天小編就為大家分享一篇在vue中使用防抖和節(jié)流,防止重復點擊或重復上拉加載實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • vue簡單實現(xiàn)一個虛擬列表的示例代碼

    vue簡單實現(xiàn)一個虛擬列表的示例代碼

    虛擬列表只渲染當前可視區(qū)域的列表,并不會將所有的數(shù)據(jù)渲染,本文主要介紹了vue簡單實現(xiàn)一個虛擬列表的示例代碼,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03

最新評論

朔州市| 论坛| 承德县| 中宁县| 昌图县| 呼图壁县| 蓬安县| 凤翔县| 张家界市| 错那县| 泸水县| 庆元县| 克拉玛依市| 年辖:市辖区| 克什克腾旗| 阳春市| 连云港市| 治县。| 车致| 丹东市| 建昌县| 奉贤区| 平果县| 安仁县| 吴旗县| 泊头市| 隆子县| 临颍县| 古浪县| 印江| 万年县| 收藏| 新津县| 寿宁县| 耿马| 宜宾县| 和林格尔县| 清河县| 巴林右旗| 梧州市| 綦江县|