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

VUE?組件的計算屬性詳解

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

前言

  • 今天也是元氣滿滿的一天,今天整理一下VUE組件的計算屬性!~~
  • 開始我們的學習之旅

計算屬性

  • 先引用一張圖 來看一下計算屬性之間的關聯:

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

  • method:定義方法,調用方法使用currentTime(),需要帶括號
  • computed:定義計算屬性,調用屬性使用currenTime2,不需要帶括號:this.message是為了能夠讓currentTime2觀察到數據變化
  • 如何在方法中的值發(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里定義了一個方法實現了和計算機屬性相同的效果,甚至該方法還可以接受參數,使用起來更靈活,既然使用methods就可以實現,那為什么還需要計算機屬性呢?原因就是計算機屬性是基于它的依賴緩存的。一個計算機屬性所依賴的數據發(fā)生變化時,它才會重新賦值,所以text只要不改變,計算機屬性也就不會更新
  • 這里的Date.now()不是響應式依賴,所以計算機屬性now不會更新。但是methods則不同,只要重新渲染,它就會被調用,因此函數也會被執(zhí)行。

總結

使用計算機屬性還是methods取決于你是否需要緩存,當遍歷大數組和做大量計算時,應當使用計算機屬性,除非你不希望得到緩存。

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

相關文章

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

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

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

    vuex中的state、getters、mutations、actions之間的關系解讀

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

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

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

    Nuxt.js之自動路由原理的實現方法

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

    解決vue項目運行npm run serve報錯的問題

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

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

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

    vue父子組件的數據傳遞示例

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

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

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

    Vue.js 的 watch函數基本用法

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

    vue中getters的使用與四個map方法的使用方式

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

最新評論

来凤县| 台东市| 苏尼特右旗| 锡林郭勒盟| 罗平县| 新绛县| 秦安县| 温泉县| 永吉县| 玉田县| 辰溪县| 庄浪县| 府谷县| 盈江县| 雷山县| 海安县| 北川| 奈曼旗| 遂宁市| 闸北区| 南江县| 广宁县| 仁布县| 南京市| 天等县| 武平县| 沅陵县| 桦甸市| 广饶县| 英山县| 和田市| 曲阜市| 定日县| 皮山县| 泾源县| 苍南县| 抚松县| 连江县| 巴林左旗| 锦州市| 龙岩市|