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

Vue混合文件使用以及ref的引用實例詳解

 更新時間:2022年12月02日 11:02:21   作者:亦世凡華、  
ref用來輔助開發(fā)者在不依賴于jQuery的情況下,獲取DOM元素或組件的引用,下面這篇文章主要給大家介紹了關(guān)于Vue混合文件使用以及ref的引用的相關(guān)資料,需要的朋友可以參考下

mixin混合

在日常開發(fā)中,當我們開發(fā)的各種組件可能會有相同的內(nèi)容,我們可以將相同的內(nèi)容在各個相對應的組件內(nèi)刪除,然后放在同一個配置里。所謂混合兩個或多個組件共享一個配置。當然這個配置文件的名字可以自定義,為了具體語義化,我將這個文件名命名mixin,當然看個人喜好。

配置混合文件 mixin.js ,為了加深了解,繼續(xù)在混合文件上添加data數(shù)據(jù)以及添加原組件data數(shù)據(jù)

// mixin.js
export const mixin = {
    methods:{
        showName(){
            alert(this.name)
        }
    }
}
export const mixin2 = {
    // 混合里面的data的數(shù)據(jù)會和原組件data數(shù)據(jù)進行整合
    data(){
        return {
            x:10, //如果原組件data數(shù)據(jù)本身就有該數(shù)據(jù),以原組件數(shù)據(jù)為主
            y:10
        }
    }
}

當然混合也不能包容所有配置項或函數(shù),生命周期函數(shù)就是一個特例: 它不以任何為主,不管是原組件還是混合文件里面的生命周期函數(shù),只要有都要。

當然混合我們也可以同全局組件一樣寫到全局配置上,這樣我們在混合里面寫到data數(shù)據(jù)或者是methods方法都會寫到vm上,直接使用無需調(diào)用。當然這樣肯定是不合理的,所以Vue官方進行解釋:推薦全局mixin應該用于插件開發(fā),不建議應用使用。

總結(jié)

mixin:混合可以把多個組件共用的配置提取成一個混入對象

使用方式

1)定義混合文件

2)使用混入文件

局部導入:mixins:['xxx']

全局導入:Vue.mixin(xxx)

PS:這里解釋一下 Vue 的插件 ,所謂Vue的插件類似游戲外掛,讓體驗感更強一些。

功能:用于增強Vue

本質(zhì):包含install方法的一個對象,install的第一個參數(shù)是Vue,第二個以后的參數(shù)是插件使用者傳遞的數(shù)據(jù)。

前言

在我們沒使用框架之前,通常一般使用 jquery 來幫助程序員簡化操作DOM的過程,隨著 Vue 的流行,在MVVM模型的影響下,程序員不需要操作DOM只需把數(shù)據(jù)維護好就行(也稱:數(shù)據(jù)驅(qū)動視圖),既然在 Vue 中不需要操作DOM,所以是很少在 Vue 項目中安裝和使用 jquery 的。假設(shè)我們在 Vue項目中需要操作DOM怎么辦?這時候就需要看看接下來講解的內(nèi)容了。

ref的引用DOM

ref用來輔助開發(fā)者在不依賴于 jQuery 的情況下,獲取 DOM 元素或組件的引用。

每個 vue 的組件實例上,都包含一個 $refs 對象,里面存儲著對應的DOM元素或組件的引用。默認情況下,組件的 $refs 指向一個空對象。

<template>
  <div class="app-container">
    <!-- 注意:ref的值是唯一的,如果出現(xiàn)重復后者會覆蓋前者,這點尤為注意 -->
    <h2 ref="myh1">App父組件</h2>
    <button @click="showThis">改變顏色</button>
  </div>
</template>
 
<script>
  export default {  
    methods:{
      showThis(){
        //  console.log(this);
        this.$refs.myh1.style.color = 'red'
      }
    }
  }
</script>

ref引用組件

如果想要使用ref引用頁面上的組件實例,則可以按照如下的方式進行操作:

組件的 $nextTick(cb) 方法,會把 cb 回調(diào)推遲到下一個 DOM 更新周期之后執(zhí)行。通俗的理解是:等組件的DOM更新完成之后,再執(zhí)行 cb 回調(diào)函數(shù)。從而能保證 cb 回調(diào)函數(shù)可以操作到最新 DOM 元素。

<template>
  <div class="app-container">
    <h2>App父組件</h2>
    <input type="text" v-if="inputVisible" @blur="showButton" ref="iptRef">
    <button v-else @click="showinput">點擊顯示輸入框</button>
  </div>
</template>
<script>
  export default {  
    data(){
      return {
        // 默認輸入框隱藏
        inputVisible:false
      }
    },
    methods:{
      showinput(){
        // 切換布爾值,把文本框展示出來
        this.inputVisible = true
        // 讓展示出來的文本框自動獲取焦點
        this.$nextTick(()=>{
          this.$refs.iptRef.focus()
        })
      },
      showButton(){
        this.inputVisible = false
      }
    },
  }
</script>
 
 

總結(jié)

ref屬性:被用來給元素或者子組件注冊引用信息(id的替代者),應用在html標簽上獲取的是真實DOM元素,應用在組件標簽上是組件實例對象(vc)

使用方式

打標識:<h1 ref="xxx">...</h1> 或  <Test ref="xxx"></Test>

獲?。簍his.$refs.xxx

到此這篇關(guān)于Vue混合文件使用以及ref的引用的文章就介紹到這了,更多相關(guān)Vue混合文件及ref引用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • 深入了解Vue組件七種通信方式

    深入了解Vue組件七種通信方式

    vue組件通信的方式,這是在面試中一個非常高頻的問題。其實Vue組件的通信方式除了props和?$emit還有很多,本文將對vue組件通信方式進行一下總結(jié),感興趣的可以學習一下
    2021-12-12
  • Vuex的實戰(zhàn)使用詳解

    Vuex的實戰(zhàn)使用詳解

    這篇文章主要介紹了Vuex的實戰(zhàn)使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • vue項目實現(xiàn)對某個區(qū)域繪制水印

    vue項目實現(xiàn)對某個區(qū)域繪制水印

    這篇文章主要為大家詳細介紹了vue項目實現(xiàn)對某個區(qū)域繪制水印,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • vue3.x項目降級到vue2.7的解決方案

    vue3.x項目降級到vue2.7的解決方案

    Vue2.7是Vue2.x的最終次要版本,下面這篇文章主要給大家介紹了關(guān)于vue3.x項目降級到vue2.7的解決方案,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-03-03
  • Vue文件配置全局變量的實例

    Vue文件配置全局變量的實例

    今天小編就為大家分享一篇Vue文件配置全局變量的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • Vue+SSM實現(xiàn)圖片上傳預覽效果

    Vue+SSM實現(xiàn)圖片上傳預覽效果

    這篇文章主要為大家詳細介紹了Vue+SSM實現(xiàn)圖片上傳預覽效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Vue新搭檔TypeScript快速入門實踐記錄

    Vue新搭檔TypeScript快速入門實踐記錄

    TypeScript 是一種由微軟開發(fā)的自由和開源的編程語言,它是 JavaScript 的一個超集,擴展了 JavaScript 的語法。這篇文章主要介紹了Vue新搭檔TypeScript快速入門實踐,需要的朋友可以參考下
    2021-06-06
  • Element實現(xiàn)動態(tài)增加多個輸入框并校驗

    Element實現(xiàn)動態(tài)增加多個輸入框并校驗

    本文主要介紹了Element實現(xiàn)動態(tài)增加多個輸入框并校驗,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • Vue內(nèi)存泄漏的識別和解決方案

    Vue內(nèi)存泄漏的識別和解決方案

    Vue是人氣爆棚且地表最強的JS(JavaScript)框架,祂允許我們構(gòu)建動態(tài)交互式的Web App,然但是,和任何軟件雷同,Vue App偶爾會遭遇內(nèi)存泄漏,導致性能暴跌和意外行為,今天,我們將深入Vue App內(nèi)存泄漏的原因,并探討識別和修復這些問題的錦囊妙計
    2023-11-11
  • 解讀Vue-loader的相關(guān)知識

    解讀Vue-loader的相關(guān)知識

    這篇文章主要介紹了解讀Vue-loader的相關(guān)知識,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03

最新評論

商丘市| 保靖县| 绵阳市| 河津市| 和顺县| 阿图什市| 南康市| 双柏县| 娱乐| 瓮安县| 马公市| 淮阳县| 鄢陵县| 韩城市| 盐池县| 文昌市| 苍溪县| 南漳县| 鸡西市| 犍为县| 宝应县| 无为县| 杨浦区| 丘北县| 万宁市| 阜宁县| 巴楚县| 舞钢市| 天台县| 冕宁县| 元朗区| 望奎县| 香港| 资溪县| 霍城县| 达拉特旗| 民勤县| 昭平县| 营山县| 黄梅县| 宁国市|