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

VUE?組件的計算屬性詳解

 更新時間:2022年06月24日 11:41:08   作者:??默默的成長????  
這篇文章主要介紹了VUE組件的計算屬性詳解,使用計算機(jī)屬性還是methods取決于你是否需要緩存,當(dāng)遍歷大數(shù)組和做大量計算時,應(yīng)當(dāng)使用計算機(jī)屬性,除非你不希望得到緩存,下文來了解具體詳情

前言

  • 今天也是元?dú)鉂M滿的一天,今天整理一下VUE組件的計算屬性!~~
  • 開始我們的學(xué)習(xí)之旅

計算屬性

  • 先引用一張圖 來看一下計算屬性之間的關(guān)聯(lián):

注意: methods和computed里的東西不能重名

  • method:定義方法,調(diào)用方法使用currentTime(),需要帶括號
  • computed:定義計算屬性,調(diào)用屬性使用currenTime2,不需要帶括號:this.message是為了能夠讓currentTime2觀察到數(shù)據(jù)變化
  • 如何在方法中的值發(fā)生了變化,則緩存就會刷新!可以在控制臺使用vm.message="HelloShit!"
 <div id='app'>
        <audio :src="currentSrc" controls autoplay @ended='handleEnded'></audio>
        <ul>
            <li :class='{active:index===currentIndex}' v-for='(item,index) in musicData' :key='item.id'
                @click='handleClick(item.songSrc,index)'>
                <h2>{{item.id}}-歌名:{{item.name}}</h2>
                <p>{{item.author}}</p>
            </li>
        </ul>
        <button @click='handleNext'>下一首</button>
    </div>

    <script src="./vue.js"></script>
    <script>
        const musicData = [{
                id: 1,
                name: '楊宗緯 - 空白格',
                author: '楊宗緯',
                songSrc: '楊宗緯 - 空白格 (Live).mp3'
            },
            {
                id: 2,
                name: '楊宗緯 - 其實都沒有',
                author: '楊宗緯',
                songSrc: '楊宗緯 - 其實都沒有.flac'
            },
            {
                id: 3,
                name: '楊宗緯 - 我想要',
                author: '楊宗緯',
                songSrc: '楊宗緯 - 我想要 (Live).flac'
            }
        ];

        new Vue({
            el: '#app',
            data: {
                musicData,
                currentSrc: '楊宗緯 - 空白格 (Live).mp3',
                currentIndex: 0
            },
            methods: {
                handleClick(src, index) {
                    this.currentSrc = src;
                    this.currentIndex = index;
                },
                handleEnded() {
                    // // 下一首的播放
                    // this.currentIndex++;
                    // this.currentSrc = this.musicData[this.currentIndex].songSrc;
                    this.handleNext();
                },
                handleNext() {
                    this.currentIndex++;
                    if (this.currentIndex === this.musicData.length) {
                        this.currentIndex = 0;
                    }
                    this.currentSrc = this.musicData[this.currentIndex].songSrc
                }
            }
        })
    </script>
  • 在methods里定義了一個方法實現(xiàn)了和計算機(jī)屬性相同的效果,甚至該方法還可以接受參數(shù),使用起來更靈活,既然使用methods就可以實現(xiàn),那為什么還需要計算機(jī)屬性呢?原因就是計算機(jī)屬性是基于它的依賴緩存的。一個計算機(jī)屬性所依賴的數(shù)據(jù)發(fā)生變化時,它才會重新賦值,所以text只要不改變,計算機(jī)屬性也就不會更新
  • 這里的Date.now()不是響應(yīng)式依賴,所以計算機(jī)屬性now不會更新。但是methods則不同,只要重新渲染,它就會被調(diào)用,因此函數(shù)也會被執(zhí)行。

總結(jié)

使用計算機(jī)屬性還是methods取決于你是否需要緩存,當(dāng)遍歷大數(shù)組和做大量計算時,應(yīng)當(dāng)使用計算機(jī)屬性,除非你不希望得到緩存。

到此這篇關(guān)于VUE 組件的計算屬性詳解的文章就介紹到這了,更多相關(guān)VUE 組件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • element 表格嵌套表單驗證指定行的操作方法

    element 表格嵌套表單驗證指定行的操作方法

    這篇文章主要介紹了element 表格嵌套表單驗證指定行的操作方法,本文通過實例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • vuex中的state、getters、mutations、actions之間的關(guān)系解讀

    vuex中的state、getters、mutations、actions之間的關(guān)系解讀

    這篇文章主要介紹了vuex中的state、getters、mutations、actions之間的關(guān)系,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • vue中的$emit 與$on父子組件與兄弟組件的之間通信方式

    vue中的$emit 與$on父子組件與兄弟組件的之間通信方式

    本文主要對vue 用$emit 與 $on 來進(jìn)行組件之間的數(shù)據(jù)傳輸。重點(diǎn)給大家介紹vue中的$emit 與$on父子組件與兄弟組件的之間通信方式,感興趣的朋友一起看看
    2018-05-05
  • Nuxt.js之自動路由原理的實現(xiàn)方法

    Nuxt.js之自動路由原理的實現(xiàn)方法

    這篇文章主要介紹了Nuxt.js之自動路由原理的實現(xiàn)方法,nuxt.js會根據(jù)pages目錄結(jié)構(gòu)自動生成vue-router模塊的路由配置。非常具有實用價值,需要的朋友可以參考下
    2018-11-11
  • 解決vue項目運(yùn)行npm run serve報錯的問題

    解決vue項目運(yùn)行npm run serve報錯的問題

    這篇文章主要介紹了解決vue項目運(yùn)行npm run serve報錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • Vue?處理異步加載順序問題之如何在Konva中確保文本在圖片之上顯示

    Vue?處理異步加載順序問題之如何在Konva中確保文本在圖片之上顯示

    在處理Konva中的異步加載順序問題時,確保在圖像加載完成后再添加其他元素是關(guān)鍵,通過將回調(diào)函數(shù)放在imageObj.onload中,并正確處理變量捕獲,我們可以確保文本總是繪制在圖片之上,這不僅解決了顯示順序的問題,也為未來的調(diào)試提供了明確的方向,感興趣的朋友一起看看吧
    2024-07-07
  • vue父子組件的數(shù)據(jù)傳遞示例

    vue父子組件的數(shù)據(jù)傳遞示例

    這篇文章主要介紹了vue父子組件的數(shù)據(jù)傳遞示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • 使用json-editor-vue3(Json字段編輯器)

    使用json-editor-vue3(Json字段編輯器)

    文章介紹了如何在Vue3+Ts項目中使用json-editor-vue3插件,并解決了導(dǎo)入過程中遇到的模塊識別問題,通過步驟說明和代碼示例,展示了如何在項目中成功引入和使用該插件,并提供了一些常見參數(shù)和事件說明
    2025-01-01
  • Vue.js 的 watch函數(shù)基本用法

    Vue.js 的 watch函數(shù)基本用法

    watch 函數(shù)是 Vue.js 提供的一個強(qiáng)大工具,用于響應(yīng)數(shù)據(jù)變化并執(zhí)行相應(yīng)的回調(diào),通過合理使用 watch 函數(shù),我們可以實現(xiàn)異步數(shù)據(jù)請求、表單驗證、動態(tài)樣式等多種功能,這篇文章主要介紹了Vue.js 的 watch函數(shù),需要的朋友可以參考下
    2024-08-08
  • vue中g(shù)etters的使用與四個map方法的使用方式

    vue中g(shù)etters的使用與四個map方法的使用方式

    這篇文章主要介紹了vue中g(shù)etters的使用與四個map方法的使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01

最新評論

大新县| 和林格尔县| 垣曲县| 金昌市| 丽水市| 宜昌市| 德安县| 永春县| 巴南区| 固始县| 长乐市| 尤溪县| 河南省| 栾城县| 乐亭县| 庄河市| 莱州市| 长武县| 大关县| 铜山县| 石渠县| 海兴县| 郯城县| 辉南县| 夏河县| 息烽县| 郓城县| 砀山县| 五莲县| 南丹县| 抚松县| 清苑县| 漳浦县| 县级市| 卢湾区| 尖扎县| 衡东县| 论坛| 来凤县| 东丽区| 建湖县|