欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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)結(jié)束之后執(zhí)行延遲回調(diào)。

有些操作(比如 this.$refs)需要在確保DOM被渲染完成后才能調(diào)用成功,這樣就需要寫在 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"來定義的,則應(yīng)該是 this.$refs.[refName][0].xxx

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

4、同樣的,由于 this.$refs 不是響應(yīng)式的,如果通過它來訪問標簽或組件的屬性,需要在 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>

總結(jié)

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

相關(guān)文章

  • Vue 同步異步存值取值實現(xiàn)案例

    Vue 同步異步存值取值實現(xiàn)案例

    這篇文章主要介紹了Vue 同步異步存值取值實現(xiàn)案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue實現(xiàn)打卡功能

    vue實現(xiàn)打卡功能

    這篇文章主要為大家詳細介紹了vue實現(xiàn)打卡功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • echarts設(shè)置tootip輪播切換展示(vue3搭配vue-echarts粘貼即用)

    echarts設(shè)置tootip輪播切換展示(vue3搭配vue-echarts粘貼即用)

    這篇文章主要為大家介紹了echarts設(shè)置tootip輪播切換展示效果,vue3搭配vue-echarts粘貼即用,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2023-10-10
  • Vue組件引用外部js的實戰(zhàn)指南

    Vue組件引用外部js的實戰(zhàn)指南

    在Vue.js應(yīng)用開發(fā)中,有時候我們需要在組件內(nèi)部引入外部JavaScript庫或腳本文件來增強組件的功能,本文將詳細探討如何在Vue.js項目中安全有效地引用外部JS文件,并提供一系列示例代碼來幫助理解這一過程,需要的朋友可以參考下
    2024-09-09
  • antdesign-vue結(jié)合sortablejs實現(xiàn)兩個table相互拖拽排序功能

    antdesign-vue結(jié)合sortablejs實現(xiàn)兩個table相互拖拽排序功能

    這篇文章主要介紹了antdesign-vue結(jié)合sortablejs實現(xiàn)兩個table相互拖拽排序功能,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • 詳解如何在你的Vue項目配置vux

    詳解如何在你的Vue項目配置vux

    這篇文章主要介紹了詳解如何在你的Vue項目配置vux,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • vue3+ts實現(xiàn)一個表單組件的詳細代碼

    vue3+ts實現(xiàn)一個表單組件的詳細代碼

    這篇文章主要介紹了vue3+ts實現(xiàn)一個表單組件的詳細代碼,確保通過axios調(diào)用后端接口來獲取省市區(qū)和街道數(shù)據(jù),并在選擇省市區(qū)時加載相應(yīng)的街道數(shù)據(jù),需要的朋友可以參考下
    2024-07-07
  • Pinia入門學習之實現(xiàn)簡單的用戶狀態(tài)管理

    Pinia入門學習之實現(xiàn)簡單的用戶狀態(tài)管理

    Vue3雖然相對于Vue2很多東西都變了,但是核心的東西還是沒有變,比如說狀態(tài)管理、路由等,再Vue3中尤大神推薦我們使用pinia來實現(xiàn)狀態(tài)管理,他也說pinia就是Vuex的新版本,這篇文章主要給大家介紹了關(guān)于Pinia入門學習之實現(xiàn)簡單的用戶狀態(tài)管理的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • vue通過過濾器實現(xiàn)數(shù)據(jù)格式化

    vue通過過濾器實現(xiàn)數(shù)據(jù)格式化

    這篇文章主要介紹了vue通過過濾器實現(xiàn)數(shù)據(jù)格式化的方法,文中講解非常細致,幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07
  • Vue如何在CSS中使用data定義的數(shù)據(jù)淺析

    Vue如何在CSS中使用data定義的數(shù)據(jù)淺析

    這篇文章主要給大家介紹了關(guān)于Vue如何在CSS中使用data定義的數(shù)據(jù)的相關(guān)資料,文中通過實例代碼介紹的非常詳細,對大家學習或者使用vue具有一定的參考學習價值,需要的朋友可以參考下
    2022-05-05

最新評論