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

petite?vue的使用示例詳解

 更新時(shí)間:2022年11月23日 14:16:12   作者:你的心上進(jìn)  
這篇文章主要為大家介紹了petite?vue的使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

題引:

這幾天在公司沒事做,于是上網(wǎng)看看有關(guān)vue的文章,忽然看到尤大大的一個(gè)文章:只有5kb大小的mini vue,好家伙,又整活了,這不得沖一沖嘛。

特征及使用:

  • petite-vue體積更小,約5bk;
  • 對(duì)漸進(jìn)的增強(qiáng)更加的明顯,特別是運(yùn)用在服務(wù)端渲染的頁(yè)面上更是便捷。系統(tǒng)看了一下,語(yǔ)法跟vue的語(yǔ)法絕大部分是一樣了,除了增加了一些新的語(yǔ)法糖;
  • 基于reactive進(jìn)行響應(yīng)式

petite-vue的引用方式有幾種,但在舉例之前,先講一下特有的語(yǔ)法:
v-scope:用于標(biāo)記被petite-vue控制的區(qū)域,里面可以定義變量,且可以在控制區(qū)域內(nèi)進(jìn)行使用。

1. CDN引入:

<!-- 正常的CDN引入 -->
<div
  v-scope="{ upVotes: 0, downVotes: 0 }"
  @vue:mounted="console.log('mounted on: ', $el)"
  @vue:unmounted="console.log('unmounted: ', $el)"
>
  <p>{{ upVotes }} <button @click="upVotes++">&#128077;</button></p>
  <p>{{ downVotes }} <button @click="downVotes++">&#128078;</button></p>
</div>
<div v-scope="{ test:1,test1:2}">
  <p v-effect="$el.textContent=test" v-show="test == 2"></p>
  <p v-effect="$el.textContent=test1" @click="console.log(1123)"></p>
</div>
<div v-scope="{ array:[1,2,3,4,5,6],obj:1 }">
  <div v-for="item in array">{{item}}</div>
</div>
<script src="https://unpkg.com/petite-vue" defer init></script>

效果圖:

總結(jié):在CDN引入的時(shí)候,需要在script標(biāo)簽加init屬性,因?yàn)樵搶傩詴?huì)進(jìn)行初始化操作,比如引入和調(diào)用createApp函數(shù)及掛載v-scope區(qū)域。

2.module引入

<!-- module引入方式 -->
<div v-scope>
    {{count}}<div>{{count}}</div>{{count}}
</div>
<script type="module">
    import { createApp } from "https://unpkg.com/petite-vue?module"
    createApp({
        count: 10,
        get plusOne() {
            return this.count + 1;
        },
        increment() {
            this.count++;
        }
    }).mount()
</script>

效果圖:

總結(jié):使用module引入的時(shí)候,我們需要從線上地址引入createApp并進(jìn)行掛載,內(nèi)部會(huì)查找有v-scope屬性的標(biāo)簽并進(jìn)行正則匹配,這跟vue3的創(chuàng)建方式很像。

3. 組件化

既然petite-vue繼承了vue的絕大部分特性,那么當(dāng)然也可以使用組件化的方式來使用

<div v-scope="About({count:2})">
    <p>{{count}}</p>
    <button @click="inc">increment</button>
</div>   
<div v-scope="Home({count:1})">
    <p>{{count}}</p>
    <button @click="inc">increment</button>
</div>
<script type="module">
    import { createApp } from "https://unpkg.com/petite-vue?module";
    function Home(props) {
        return {
            count: props.count,
            inc() {
                this.count++;
            }
        }
    }
    function About(props) {
        return {
            count: props.count,
            inc() {
                this.count++;
            }
        }
    }
    createApp({
        Home,
        About
    }).mount();
</script>

效果圖:

總結(jié):其實(shí)這就跟CDN引入的方式很像,我們把v-scope綁定的變量注冊(cè)在createApp里,并使用函數(shù)的方式,那么在v-scope綁定的地方都可以使用這些函數(shù)。當(dāng)我們調(diào)用的時(shí)候返回一個(gè)對(duì)象,就跟我們直接v-scope="{xxx:xxx}"一樣,擴(kuò)展性還更高

4. 模板組件

我們可以發(fā)現(xiàn),組件化的例子中:Home和About組件的不同之處就是參數(shù)不同,模板是一樣的。那么我們可以使用vue中的template的思路,通過$template指定模板來進(jìn)行優(yōu)化。

<!-- 模板組件 -->
<template id="counter-template">
    <div>
        my count is {{count}}
    </div>
</template>
<div v-scope="Counter({count:13})"></div>
<div v-scope="Counter({count:14})"></div>
<script type="module">
  import { createApp } from "https://unpkg.com/petite-vue?module";
    function Counter(props){
        return{
            $template:"#counter-template",
            count:props.count,
            inc(){
                this.count++
            }
        }
    }
    createApp({
        Counter
    }).mount()
</script>

效果圖:

結(jié)尾:

以上就是petite-vue的一個(gè)簡(jiǎn)單使用手冊(cè),當(dāng)然其他的用法大家可以上GitHub上進(jìn)行略讀,但總體上跟vue的使用方式和思路是十分相像的。

以上就是petite vue的使用示例詳解的詳細(xì)內(nèi)容,更多關(guān)于petite vue使用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Vue項(xiàng)目獲取url中的參數(shù)(親測(cè)可用)

    Vue項(xiàng)目獲取url中的參數(shù)(親測(cè)可用)

    這篇文章主要介紹了Vue項(xiàng)目獲取url中的參數(shù),本文通過兩種情況分析給大家詳細(xì)介紹,感興趣的朋友一起看看吧
    2022-08-08
  • 在Vue中使用echarts的實(shí)例代碼(3種圖)

    在Vue中使用echarts的實(shí)例代碼(3種圖)

    本篇文章主要介紹了在Vue中使用echarts的實(shí)例代碼(3種圖),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-07-07
  • vue3+Element?Plus?v-model實(shí)現(xiàn)父子組件數(shù)據(jù)同步的案例代碼

    vue3+Element?Plus?v-model實(shí)現(xiàn)父子組件數(shù)據(jù)同步的案例代碼

    這篇文章主要介紹了vue3+Element?Plus?v-model實(shí)現(xiàn)父子組件數(shù)據(jù)同步,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-01-01
  • 手寫實(shí)現(xiàn)Vue計(jì)算屬性

    手寫實(shí)現(xiàn)Vue計(jì)算屬性

    這篇文章主要介紹了手寫實(shí)現(xiàn)Vue計(jì)算屬性,本文從一個(gè)簡(jiǎn)單的計(jì)算屬性例子開始,一步步實(shí)現(xiàn)了計(jì)算屬性。并且針對(duì)這個(gè)例子,詳細(xì)分析了頁(yè)面渲染時(shí)的整個(gè)代碼執(zhí)行邏輯,需要的小伙伴可以參考一下
    2022-08-08
  • vue中實(shí)現(xiàn)動(dòng)態(tài)生成二維碼的方法

    vue中實(shí)現(xiàn)動(dòng)態(tài)生成二維碼的方法

    這篇文章主要介紹了vue中實(shí)現(xiàn)動(dòng)態(tài)生成二維碼的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 在vue中實(shí)現(xiàn)點(diǎn)擊選擇框阻止彈出層消失的方法

    在vue中實(shí)現(xiàn)點(diǎn)擊選擇框阻止彈出層消失的方法

    今天小編就為大家分享一篇在vue中實(shí)現(xiàn)點(diǎn)擊選擇框阻止彈出層消失的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • 使用vue實(shí)現(xiàn)pdf預(yù)覽功能的方法

    使用vue實(shí)現(xiàn)pdf預(yù)覽功能的方法

    許多朋友想要材料上傳之后點(diǎn)擊預(yù)覽實(shí)現(xiàn)在瀏覽器上預(yù)覽的效果,所以本文將給大家介紹如何使用vue實(shí)現(xiàn)pdf預(yù)覽功能,文中有實(shí)現(xiàn)代碼,有需要的朋友可以參考閱讀下
    2023-08-08
  • Vue.js 實(shí)現(xiàn)數(shù)據(jù)展示全部和收起功能

    Vue.js 實(shí)現(xiàn)數(shù)據(jù)展示全部和收起功能

    這篇文章主要介紹了Vue.js 實(shí)現(xiàn)數(shù)據(jù)展示全部和收起功能,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-09-09
  • vue3?emits事件使用示例詳解

    vue3?emits事件使用示例詳解

    這篇文章主要為大家介紹了vue3?emits事件使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • 用uniapp寫一個(gè)好看的登錄頁(yè)面

    用uniapp寫一個(gè)好看的登錄頁(yè)面

    隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,移動(dòng)端app的使用越來越普及,而對(duì)于開發(fā)者來說如何設(shè)計(jì)一款簡(jiǎn)單易用的app是一項(xiàng)不容忽視的工作,其中登錄頁(yè)面是app使用過程中最基礎(chǔ)的組成部分之一,這篇文章主要給大家介紹了關(guān)于用uniapp寫一個(gè)好看的登錄頁(yè)面的相關(guān)資料,需要的朋友可以參考下
    2024-03-03

最新評(píng)論

满城县| 和硕县| 三都| 高州市| 崇义县| 志丹县| 视频| 枣强县| 涡阳县| 淅川县| 万载县| 京山县| 临沂市| 黔江区| 兴海县| 南溪县| 新乡县| 黄浦区| 阜平县| 旬邑县| 昌乐县| 东乌珠穆沁旗| 华阴市| 得荣县| 万盛区| 宁国市| 太仆寺旗| 乾安县| 城步| 会泽县| 桦川县| 珠海市| 祁门县| 镇安县| 剑阁县| 榕江县| 海宁市| 八宿县| 巨鹿县| 遂川县| 黎平县|