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

微信小程序轉(zhuǎn)換uniapp的遷移步驟以及遇到的問題總結(jié)

 更新時間:2022年07月21日 11:32:00   作者:國服第二切圖仔  
最近公司有個需求,第一次遇到,把原生的微信小程序代碼轉(zhuǎn)換為uni-app項目,下面這篇文章主要給大家介紹了關(guān)于微信小程序轉(zhuǎn)換uniapp的遷移步驟以及遇到問題的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

背景:由于歷史原因,公司有個歷史項目使用vue開發(fā)的公眾號H5,原生開發(fā)的微信小程序。兩端功能的完全一樣,但是需要維護兩個項目,最近客戶提了需求需要修改部分功能,博主接到需求后,覺得維護兩套代碼不僅是重復(fù)開發(fā),測試起來也麻煩,因為之前是兩個人開發(fā)不同端的緣故,導(dǎo)致大部分的bug都是因為兩端不一致產(chǎn)生的。為了節(jié)省時間和維護成本,提升開發(fā)測試效率,在反復(fù)對比調(diào)研,最終選擇了uniapp技術(shù)框架融合兩端進行重構(gòu)。博主目前正在使用uniapp開發(fā)H5和小程序,這篇文章是和大家分享并記錄一下原生小程序在遷移到uniapp的步驟和時遇到的問題。

一、遷移步驟

把微信小程序轉(zhuǎn)成uni-app,這里推薦一款【miniprogram-to-uniapp】小程序轉(zhuǎn)換工具插件

第一步:安裝miniprogram-to-uniapp 插件

在命令行里,運行【 npm install miniprogram-to-uniapp -g 】進行安裝,因為這個包是工具,要求全局都能使用,所以需要-g進行全局安裝。
如果運行npm報錯,請先安裝Node.js,下載地址:https://nodejs.org/zh-cn/

npm install miniprogram-to-uniapp -g

第二步:查看是否安裝成功

繼續(xù)在命令行里,運行【 wtu -V 】,執(zhí)行結(jié)果如下

 顯示版本號,說明已經(jīng)安裝成功了

第三步:使用插件進行轉(zhuǎn)換

在命令行里,輸入【wtu -i "你的小程序項目路徑"】

注意 -i 前面和后面都有空格!??!

注意 -i 前面和后面都有空格?。?!

注意 -i 前面和后面都有空格?。。?/p>

如:【wtu -i "E:\zpWork\Project_self\miniprogram-to-uniapp\test\test-wx-to-uni"】 ,回車后即可以在源項目同及目錄得到一個后綴為_uni的目錄,即轉(zhuǎn)換成功。

轉(zhuǎn)換前

 轉(zhuǎn)換后

 轉(zhuǎn)換后的項目文件對比(左邊是小程序項目,右邊是Uni-app項目目錄):

第四步:使用hbuilder X運行轉(zhuǎn)換后的項目并在微信小程序編輯器查看

將轉(zhuǎn)換后的xxx_uni項目導(dǎo)入到hbuilder X,
點擊菜單 運行--> 運行到小程序模擬器-->微信開發(fā)者工具?。ㄈ绻鞘褂昧藇ant的項目,請運行到H5,vant項目轉(zhuǎn)換后僅支持H5和app)
然后查看轉(zhuǎn)換后的項目運行到小程序,是否可以正常運行無報錯!

第五步:調(diào)試修改

運行項目,在小程序開發(fā)者工具調(diào)試遷移頁面的報錯信息

二、處理遷移問題

根據(jù)下方遷移內(nèi)容,逐一更新頁面方法,修復(fù)頁面報錯信息,頁面顯示、功能運行正常即遷移完成。

js部分

1,刪除 const app = getApp();

2,以 wx. 開頭的方法更新為 uni. 開頭

3,數(shù)據(jù)綁定 this.setData({ a : 1 }) 更新為 this.a = 1

4,路由跳轉(zhuǎn) wx.navigateTo()  更新為uni.navigateTo() 

5,onLoad(options)

  • 通過options或this.$Route.query獲取頁面?zhèn)鬟f參數(shù)

6、部分頁面生命周期釋義,詳見頁面生命周期

  • onPullDownRefresh:監(jiān)聽用戶下拉動作,一般用于下拉刷新
  • onReachBottom:頁面滾動到底部的事件(不是scroll-view滾到底),常用于下拉下一頁數(shù)據(jù)
  • onShareAppMessage:用戶點擊右上角分享
  • onPageScroll:監(jiān)聽頁面滾動

templete

以下幾條不影響使用,改不改都行

  1. <block>標(biāo)簽可能是小程序<block>標(biāo)簽或templete模版轉(zhuǎn)換生成的,有的頁面轉(zhuǎn)完后可能有多層<block>嵌套的情況,不影響使用,但是不代碼太美觀,修改的話<block> 標(biāo)簽替換為 <templete> 標(biāo)簽,樣式估計也需要調(diào)整
  2. 頁面事件 例如 <view @tap="clickBtn" data-id="id">點擊</view> ,頁面轉(zhuǎn)換完使用沒問題,但是和平常開發(fā)vue不一樣,更新的話可以改為<view @click="clickBtn(id)">, 在修改對應(yīng)方法即可
  3. 引入wxs的頁面 <script module="utils" lang="wxs" src="./utils.wxs"></script> 大部分方法可改為 computed、watch,

css部分

  1. css轉(zhuǎn)換可能失敗,大部分是單位轉(zhuǎn)換失敗,原px乘2,改為rpx即可
  2. 盒子模型的問題(小程序默認(rèn)content-box,uniapp默認(rèn)樣式border-box),修改box-sizing即可

三、擴展

習(xí)慣vue寫法來處理router路由的同學(xué),還可以集成一個uni-simple-router插件來管理路由。

1、使用vue-cli 創(chuàng)建一個新的項目,使用uni-simple-router管理路由。

vue create -p dcloudio/uni-preset-vue xcxToUniapp

2、 打開該項目,新建頁面,copy轉(zhuǎn)換后的項目的代碼

3、運行項目即可

總結(jié)

這篇文章記錄了博主用使用uniapp集成H5和小程序兩端的一些思路和解決方案。雖然很曲折,但還是很開心,故記錄一下。希望這個記錄能幫到看到這篇文章的小伙伴

到此這篇關(guān)于微信小程序轉(zhuǎn)換uniapp的遷移步驟以及遇到的問題總結(jié)的文章就介紹到這了,更多相關(guān)微信小程序轉(zhuǎn)uniapp內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • javascript iFrame研究

    javascript iFrame研究

    iFrame小應(yīng)用
    2008-12-12
  • JS長整型精度問題實例分析

    JS長整型精度問題實例分析

    這篇文章主要介紹了JS長整型精度問題,實例分析了Java項目結(jié)合前臺js腳本出現(xiàn)的長整型精度問題與相應(yīng)的解決方案,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-01-01
  • JavaScript Event學(xué)習(xí)第九章 鼠標(biāo)事件

    JavaScript Event學(xué)習(xí)第九章 鼠標(biāo)事件

    鼠標(biāo)事件是到目前為止最重要的事件。在這一章我將介紹一些鼠標(biāo)事件的最常見的問題和技巧。
    2010-02-02
  • 原生js實現(xiàn)放大鏡特效

    原生js實現(xiàn)放大鏡特效

    這篇文章主要為大家詳細(xì)介紹了原生js實現(xiàn)放大鏡特效,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • javascript實現(xiàn)window.print()去除頁眉頁腳

    javascript實現(xiàn)window.print()去除頁眉頁腳

    這篇文章主要介紹了javascript實現(xiàn)window.print()去除頁眉頁腳的方法以及各參數(shù)的設(shè)置技巧,需要的朋友可以參考下
    2014-12-12
  • layer彈出框確定前驗證:彈出消息框的方法(彈出兩個layer)

    layer彈出框確定前驗證:彈出消息框的方法(彈出兩個layer)

    今天小編就為大家分享一篇layer彈出框確定前驗證:彈出消息框的方法(彈出兩個layer),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • 深入探究V8引擎的底層原理

    深入探究V8引擎的底層原理

    V8引擎是一款由Google開發(fā)的JavaScript引擎,V8引擎采用了眾多的優(yōu)化措施,使得其在性能上得到了極大的提升,能夠高效地執(zhí)行JavaScript代碼,本文將和大家一起探討一下V8引擎底層原理,探究其優(yōu)異性能之謎
    2023-06-06
  • JS控件bootstrap datepicker使用方法詳解

    JS控件bootstrap datepicker使用方法詳解

    這篇文章主要介紹了js控件bootstrap datepicker的使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • js執(zhí)行shell命令的幾種方式(Node)

    js執(zhí)行shell命令的幾種方式(Node)

    在做一個客戶端基建項目的時候,多處需要用到JS調(diào)取命令行執(zhí)行shell腳本,本文主要介紹了js執(zhí)行shell命令的幾種方式,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • js 實現(xiàn) input type="file" 文件上傳示例代碼

    js 實現(xiàn) input type="file" 文件上傳示例代碼

    在開發(fā)中,文件上傳必不可少但是它長得又丑、瀏覽的字樣不能換,一般會讓其隱藏點其他的標(biāo)簽(圖片等)來時實現(xiàn)選擇文件上傳功能
    2013-08-08

最新評論

潼关县| 兰西县| 阳山县| 福海县| 静海县| 常德市| 波密县| 柳河县| 招远市| 永仁县| 馆陶县| 吴桥县| 余姚市| 宁德市| 衡东县| 紫金县| 巫溪县| 巧家县| 望谟县| 绵阳市| 郴州市| 淅川县| 新宁县| 佛冈县| 绍兴市| 巍山| 文水县| 仙居县| 潍坊市| 达拉特旗| 湄潭县| 北碚区| 托克逊县| 玉门市| 兰州市| 景泰县| 革吉县| 准格尔旗| 贵港市| 桓仁| 曲阜市|