欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用kbone解決Vue項目同時支持小程序問題

 更新時間:2019年11月08日 10:31:23   作者:binnie  
這篇文章主要介紹了使用kbone解決Vue項目同時支持小程序問題,本文通過一個todo的例子跟大家詳細(xì)介紹,需要的朋友可以參考下

什么是kbone

微信小程序開發(fā)過程中,許多開發(fā)者會遇到 小程序 與 Web 端一起的需求,由于 小程序 與 Web 端的運行環(huán)境不同,開發(fā)者往往需要維護(hù)兩套類似的代碼,這對開發(fā)者來說比較耗費力氣,并且會出現(xiàn)不同步的情況。

為了解決上述問題,微信小程序推出了同構(gòu)解決方案 kbone 來解決此問題。

那么, kbone 要怎么使用呢?這里我們將通過一個 todo 的例子來跟大家講解。

基本結(jié)構(gòu)

首先,我們來看下一個基本的 kbone 項目的目錄結(jié)構(gòu)(這里的 todo 是基于 Vue 的示例, kbone 也有 ReactPreact , Omi 等版本,詳情可移步 kbone github )。

因為 kbone 是為了解決 小程序 與 Web 端的問題,所以每個目錄下的配置都會有兩份(小程序 與 Web 端各一份)

入口

不管是 小程序 端還是 Web 端,都需要入口文件。在 src/index 目錄下, main.js 為 Web 端用主入口, main.mp.js 則為 小程序 端用主入口。

當(dāng)然,Web 端會比 小程序 多一個入口頁面,即 index.html (位于根目錄下)。

下面兩段代碼分別是 小程序端 入口與 Web 端入口的代碼,可以看到 小程序端的入口代碼封裝在 createApp 函數(shù)里面(這里固定即可),內(nèi)部會比 Web 端多一個創(chuàng)建 app 節(jié)點的操作,其他的基本就是一致的。

// 小程序端入口
import Vue from 'vue'
import todo from './todo.vue'

export default function createApp() {
 // 創(chuàng)建app節(jié)點用于綁定
 const container = document.createElement('div')
 container.id = 'app'
 document.body.appendChild(container)

 return new Vue({
 el: '#app',
 render: h => h(todo)
 })
}
// web端入口
import Vue from 'vue'
import todo from './todo.vue'

new Vue({
 el: '#app',
 render: h => h(todo)
})

todo.vue

在上面的入口圖可以看到,源碼目錄中,除了入口文件分開之前,頁面文件就是共用的了,這里直接使用 Vue 的寫法即可,不用做特殊的適應(yīng)。

配置

寫完代碼之后,我們要怎么跑項目呢?這時,配置就派上用場啦。

Web 端配置為正常的 Vue 配置,小程序端配置與 Web 端配置的唯一不同就是需要引入 mp-webpack-plugin 插件來將 Vue 組件轉(zhuǎn)化為小程序代碼。

構(gòu)建代碼

接著,我們需要構(gòu)建代碼,讓代碼可以運行到各自的運行環(huán)境中去。構(gòu)建完成后,生產(chǎn)代碼會位于 dist 目錄中。

// 構(gòu)建 web 端代碼
// 目標(biāo)代碼在 dist/web
npm run build

// 構(gòu)建小程序端代碼
// 目標(biāo)代碼在 dist/mp
npm run mp

小程序端 的構(gòu)建會比 Web 端的構(gòu)建多一個步驟,就是 npm 構(gòu)建。

進(jìn)入 dist/mp 目錄,執(zhí)行 npm install 安裝依賴,用開發(fā)者工具將 dist/mp 目錄作為小程序項目導(dǎo)入之后,點擊工具欄下的 構(gòu)建 npm ,即可預(yù)覽效果。

效果

最后,我們來看一下 todo 的效果。kbone 初體驗,done~

todo 代碼可到 kbone/demo13 自提。

最后

如果你想了解更多 kbone 相關(guān)的使用及詳情,可移步 kbone github 。

總結(jié)

以上所述是小編給大家介紹的使用kbone解決Vue項目同時支持小程序問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • 基于mpvue的小程序項目搭建的步驟

    基于mpvue的小程序項目搭建的步驟

    mpvue 是美團開源的一套語法與vue.js一致的、快速開發(fā)小程序的前端框架,這篇文章主要介紹了基于mpvue的小程序項目搭建的步驟,非常具有實用價值,需要的朋友可以參考下
    2018-05-05
  • vue緩存之keep-alive的理解和應(yīng)用詳解

    vue緩存之keep-alive的理解和應(yīng)用詳解

    這篇文章主要介紹了vue緩存之keep-alive的理解和應(yīng)用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Vue如何給組件添加點擊事件?@click.native

    Vue如何給組件添加點擊事件?@click.native

    這篇文章主要介紹了Vue如何給組件添加點擊事件?@click.native,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Vue CLI3 開啟gzip壓縮文件的方式

    Vue CLI3 開啟gzip壓縮文件的方式

    gizp壓縮是一種http請求優(yōu)化方式,通過減少文件體積來提高加載速度。這篇文章主要介紹了Vue CLI3 開啟gzip壓縮,需要的朋友可以參考下
    2018-09-09
  • vue裁切預(yù)覽組件功能的實現(xiàn)步驟

    vue裁切預(yù)覽組件功能的實現(xiàn)步驟

    這篇文章主要介紹了vue裁切預(yù)覽組件功能的實現(xiàn)代碼,本文通過實例代碼相結(jié)合的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • 一次vue項目優(yōu)化的實際操作記錄

    一次vue項目優(yōu)化的實際操作記錄

    用vue開發(fā)項目上線以后,發(fā)現(xiàn)首頁加載速度非常慢,如果項目比較大,甚至可能出現(xiàn)10s以上的等待,下面這篇文章主要給大家介紹了關(guān)于vue項目優(yōu)化的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • vue3+ant?design的form數(shù)組表單校驗方法

    vue3+ant?design的form數(shù)組表單校驗方法

    這篇文章主要介紹了vue3+ant?design的form數(shù)組表單,如何校驗,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-09-09
  • vue開發(fā)實現(xiàn)評論列表

    vue開發(fā)實現(xiàn)評論列表

    這篇文章主要為大家詳細(xì)介紹了vue開發(fā)實現(xiàn)評論列表,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue如何解決代碼需要在dom渲染之后執(zhí)行問題

    vue如何解決代碼需要在dom渲染之后執(zhí)行問題

    這篇文章主要介紹了vue如何解決代碼需要在dom渲染之后執(zhí)行問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • 使用Vue.js實現(xiàn)數(shù)據(jù)的雙向綁定

    使用Vue.js實現(xiàn)數(shù)據(jù)的雙向綁定

    在Vue.js中,雙向數(shù)據(jù)綁定是一項非常強大的功能,它能夠使數(shù)據(jù)和視圖之間保持同步,讓開發(fā)者更加方便地操作數(shù)據(jù),在本文中,我們將介紹如何用Vue.js實現(xiàn)數(shù)據(jù)的雙向綁定,需要的朋友可以參考下
    2023-04-04

最新評論