您當前位置>首頁 » 新聞資(zī)訊 » 小程序相關(guān) >
手把手帶你(nǐ)用 Vue 3.0 寫個(gè)小程序框架
發表時間:2021-1-4
發布人:葵宇科技
浏覽次數:44
1、Vue3 部分新特性
Composition API
、Teleport
、Fragments
和(hé) <script setup /> & <style vars />
等。1. Composition API
Option API(選項 API )
構建組件,一般來說組件擁有 data、methods、computed 等選項。這是一種屬性相互隔離(lí)的模式,好處是各屬性内容分離(lí)開,對于新手來說比較友好。Composition API 方式(組合 API )
,基于 reactivity(響應式)
的思想進行組件構建,将邏輯封裝到函數中(zhōng),可(kě)以實現類似 React Hooks 的邏輯組合和(hé)重用。2. Teleport(傳入)
3. Fragments(碎片)
<template />
标簽下(xià)不支持放置多個(gè)組件,這個(gè)限制在 Vue3 中(zhōng)不再存在。這點比較好理解,下(xià)述組件設計在 Vue3 中(zhōng)是沒有問(wèn)題的:<template>
<header>...</header>
<main v-bind="$attrs">...</main>
<footer>...</footer>
</template>4. 實驗性質的語法糖 <script setup>、<style vars>
、
<script setup>
:用于在 SFC 中(zhōng)使用 Composition API
的語法糖,改善在單個(gè)文(wén)件組件中(zhōng)使用 Composition API 時的體驗。<style vars>
: SFC 中(zhōng)狀态驅動(dòng)的 CSS 變量,它提供了直接的 CSS 配置和(hé)封裝,支持将組件狀态驅動(dòng)的CSS變量注入到“單個(gè)文(wén)件組件”樣式中(zhōng)。2、小程序
index.js
有一個(gè) Page 函數,裡面是對象配置,類似于 Vue 的 options 配置一樣,有一個(gè) data 屬性,存放着初始化的數據。
如(rú)果想要修改數據改變視圖,又需要像react一樣,需要調用 setData 去修改視圖。
index.ttml
類似于 vue 的 template,我們需要先定義模闆才能顯示視圖
注意: 不能直接在 index.js 裡面去修改定義的模闆的 DOM,隻能先定義好,這是由于小程序架構雙線程導緻的,分為邏輯層和(hé)渲染層,我們寫的 index.js 代碼跑在邏輯層裡面,index.ttml 跑在渲染層裡面,兩個(gè)線程就通(tōng)過 setData 進行數據交換。
index.json
index.ttss
模闆
動(dòng)态模闆
// 使用這個(gè)模闆 <template is="{{type}}" data="http://www.wxapp-union.com/{{item: item}}"/>
上面 is 屬性的 type 就是動(dòng)态的,它是個(gè)變量,可(kě)以根據 type 的值來選擇不同的模闆,比如(rú) type 為 view 時,就會渲染我們提前定義好的 view template。自定義渲染層
`createRenderer`
函數需要兩個(gè)參數,一個(gè)是patchProp,一個(gè)是nodeOps。nodeOps
VNode
。