<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        vue組件基礎使用方法有哪些

        來源:懂視網 責編:小采 時間:2020-11-27 19:42:48
        文檔

        vue組件基礎使用方法有哪些

        vue組件基礎使用方法有哪些:這次給大家帶來vue組件基礎使用方法有哪些,vue組件基礎使用的注意事項有哪些,下面就是實戰案例,一起來看一下。什么是組件組件(Component)是對數據和方法的簡單封裝。web中的組件其實可以看成是頁面的一個組成部分,它是一個具有獨立的邏輯和功能的界面,
        推薦度:
        導讀vue組件基礎使用方法有哪些:這次給大家帶來vue組件基礎使用方法有哪些,vue組件基礎使用的注意事項有哪些,下面就是實戰案例,一起來看一下。什么是組件組件(Component)是對數據和方法的簡單封裝。web中的組件其實可以看成是頁面的一個組成部分,它是一個具有獨立的邏輯和功能的界面,
        這次給大家帶來vue組件基礎使用方法有哪些,vue組件基礎使用的注意事項有哪些,下面就是實戰案例,一起來看一下。

        什么是組件

        組件(Component)是對數據和方法的簡單封裝。web中的組件其實可以看成是頁面的一個組成部分,它是一個具有獨立的邏輯和功能的界面,同時又能根據規定的接口規則進行相互融和,最終成為一個完整的應用,頁面就是由一個個類似這樣的組成部分組成的,比如導航、列表、彈窗、下拉菜單等。頁面只不過是這樣組件的容器,組件自由組合形成功能完整的界面,當不需要某個組件,或者想要替換某個組件時,可以隨時進行替換和刪除,而不影響整個應用的運行。、前端組件化的核心思想就是將一個巨大復雜的東西拆分成粒度合理的小東西。

        使用提高開發效率、方便重復使用、簡化調試步驟、提升整個項目的可維護性、便于協同開發。

        vue作為一個輕量級前端框架,其核心就是組件化開發。

        組件可以擴展 HTML 元素,封裝可重用的代碼。在較高層面上,組件是自定義元素,Vue.js 的編譯器為它添加特殊功能。在有些情況下,組件也可以表現為用 is 特性進行了擴展的原生 HTML 元素。

        vue中,組件是可復用的 Vue 實例。因為組件是可復用的 Vue 實例,所以它們與 new Vue 接收相同的選項,例如 data、computed、watch、methods 以及生命周期鉤子等。僅有的例外是像 el 這樣根實例特有的選項。

        組件注冊

        全局注冊

        通過 Vue.component 來創建組件:

         Vue.component('my-component-name', {
         // ... 選項 ...
         })

        這些組件是全局注冊的。也就是說它們在注冊之后可以用在任何新創建的 Vue 根實例 (new Vue) 的模板中。比如:

        Vue.component('component-a', { /* ... */ })
        Vue.component('component-b', { /* ... */ })
        Vue.component('component-c', { /* ... */ })
        new Vue({ el: '#app' })
        <p id="app">
         <component-a></component-a>
         <component-b></component-b>
         <component-c></component-c>
        </p>

        在所有子組件中也是如此,也就是說這三個組件在各自內部也都可以相互使用。

        局部注冊

        全局注冊往往是不夠理想的。比如,如果你使用一個像 webpack 這樣的構建系統,全局注冊所有的組件意味著即便你已經不再使用一個組件了,它仍然會被包含在你最終的構建結果中。這造成了用戶下載的 JavaScript 的無謂的增加。

        在這些情況下,你可以通過一個普通的 JavaScript 對象來定義組件:

        var ComponentA = { /* ... */ }
        var ComponentB = { /* ... */ }
        var ComponentC = { /* ... */ }

        然后在 components 選項中定義你想要使用的組件:

        new Vue({
         el: '#app'
         components: {
         'component-a': ComponentA,
         'component-b': ComponentB
         }
        })

        對于 components 對象中的每個屬性來說,其屬性名就是自定義元素的名字,其屬性值就是這個組件的選項對象。
        注意局部注冊的組件在其子組件中不可用。例如,如果你希望 ComponentA 在 ComponentB 中可用,則你需要這樣寫:

        var ComponentA = { /* ... */ }
        var ComponentB = {
         components: {
         'component-a': ComponentA
         },
         // ...
        }

        使用Babel和webpack中的注冊組件

        import ComponentA from './ComponentA.vue'
        export default {
         components: {
         ComponentA
         },
         // ...
        }

        注意在 ES2015+ 中,在對象中放一個類似 ComponentA 的變量名其實是 ComponentA: ComponentA 的縮寫,即這個變量名同時是:

        用在模板中的自定義元素的名稱
        包含了這個組件選項的變量名

        基礎組件的自動化全局注冊

        沒看懂。

        data 必須是一個函數

        data: {
         count: 0
        }

        這樣定義的data中的變量是全局變量,在使用組件時,在一個組件中修改變量的值,會影響到所有組件中該變量的值。為避免變量干擾,一個組件的 data 選項必須是一個函數,因此每個實例可以維護一份被返回對象的獨立的拷貝:

        data: function () {
         return {
         count: 0
         }
        }

        動態組件

        在不同組件之間進行動態切換是非常有用的,比如在一個多標簽的界面里:

        上述內容可以通過 Vue 的 <component> 元素加一個特殊的 is 特性來實現:

        <!-- 組件會在 `currentTabComponent` 改變時改變 -->
        <component v-bind:is="currentTabComponent"></component>

        你會注意到,如果你選擇了一篇文章,切換到 Archive 標簽,然后再切換回 Posts,是不會繼續展示你之前選擇的文章的。這是因為你每次切換新標簽的時候,Vue 都創建了一個新的 currentTabComponent 實例。

        重新創建動態組件的行為通常是非常有用的,但是在這個案例中,我們更希望那些標簽的組件實例能夠被在它們第一次被創建的時候緩存下來。為了解決這個問題,我們可以用一個 <keep-alive> 元素將其動態組件包裹起來。

        <!-- 失活的組件將會被緩存!-->
        <keep-alive>
         <component v-bind:is="currentTabComponent"></component>
        </keep-alive>

        可以在這里查看動態組件例子。https://jsfiddle.net/chrisvfritz/Lp20op9o/

        dom標簽內使用組件

        有些 HTML 元素,諸如 <ul>、<ol>、<table> 和 <select>,對于哪些元素可以出現在其內部是有嚴格限制的。而有些元素,諸如 <li>、<tr> 和 <option>,只能出現在其它某些特定的元素內部。

        這會導致我們使用這些有約束條件的元素時遇到一些問題。例如:

        <table>
         <blog-post-row></blog-post-row>
        </table>

        這個自定義組件 <blog-post-row> 會被作為無效的內容提升到外部,并導致最終渲染結果出錯。幸好這個特殊的 is 特性給了我們一個變通的辦法:

        <table>
         <tr is="blog-post-row"></tr>
        </table>

        相信看了本文案例你已經掌握了方法,更多精彩請關注Gxl網其它相關文章!

        推薦閱讀:

        如何使用vue裁切預覽組件

        怎樣使用JS+AJAX做出三級聯動

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        vue組件基礎使用方法有哪些

        vue組件基礎使用方法有哪些:這次給大家帶來vue組件基礎使用方法有哪些,vue組件基礎使用的注意事項有哪些,下面就是實戰案例,一起來看一下。什么是組件組件(Component)是對數據和方法的簡單封裝。web中的組件其實可以看成是頁面的一個組成部分,它是一個具有獨立的邏輯和功能的界面,
        推薦度:
        標簽: 使用 VUE 使用方法
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲黄色激情视频| 亚洲一区二区三区电影| 久久久久亚洲精品无码网址色欲 | 亚洲性猛交xx乱| 天黑黑影院在线观看视频高清免费| 国产成A人亚洲精V品无码| 在线观看亚洲精品专区| 日本免费人成黄页在线观看视频| 91香蕉在线观看免费高清| 永久免费AV无码国产网站 | 国产成人免费a在线视频app| 亚洲XX00视频| 亚洲国产综合自在线另类| 永久免费视频网站在线观看| 亚洲一区二区在线免费观看| 97免费人妻无码视频| 亚洲中文字幕乱码一区| 国产成人涩涩涩视频在线观看免费 | 亚洲人成亚洲精品| 亚洲一区二区三区播放在线| 日韩在线观看视频免费| 无码一区二区三区免费视频| 亚洲欧美日本韩国| 美女内射毛片在线看免费人动物| 伊人久久亚洲综合影院| 朝桐光亚洲专区在线中文字幕| 中文字幕成人免费高清在线| 亚洲午夜久久久久久久久电影网 | 久久久久免费视频| 久久亚洲国产精品| 黄色免费网站网址| AV激情亚洲男人的天堂国语| 中文字幕亚洲无线码| 日本在线免费播放| 国产精品亚洲成在人线| 一个人看的www在线免费视频| 免费久久人人爽人人爽av| 无码不卡亚洲成?人片| 久久不见久久见免费影院www日本| 久久不见久久见免费影院| 免费观看四虎精品成人|