一、安装miniprogram-to-uniapp 插件
(另外也推荐使用HBuilderX插件https://ext.dcloud.net.cn/plugin?id=2656,直接转换小程序到uni-app)-
(uniapp官网有详细推荐:https://uniapp.dcloud.net.cn/translate.html)
1.请先安装Node.js,下载地址:https://nodejs.org/zh-cn/
npm install miniprogram-to-uniapp -g
查看是否安装成功,运行 wtu -V(显示版本号,就说明已经安装成功了)
二、使用插件进行转换
在终端命令行里,输入【wtu -i "你的小程序项目路径"】
回车后即可以在源项目同及目录得到一个后缀为_uni的目录,即转换成功。
三、使用hbuilder X运行转换后的项目并在微信小程序编辑器查看
将转换后的xxx_uni项目导入到hbuilder X,并运行,可能会报错,一些微信api组件可能没有比如dialog可以去uniapp官网找相关组件
地址(https://ext.dcloud.net.cn/)找到需要的直接用hbuilder X倒入使用即可
四、可能会遇到的问题
1、删除 const app = getApp();
2、以 wx. 开头的方法更新为 uni. 开头
3、数据绑定 this.setData({ a : 1 }) 更新为 this.a = 1
4、路由跳转 wx.navigateTo() 更新为uni.navigateTo()
5、属性绑定从
attr="{{ a }}",改为 :attr="a"
title="复选框{{ item }}" 改为 :title="'复选框' + item"
6、事件绑定从 bind:click="toggleActionSheet1" 改为 @click="toggleActionSheet1"
7、阻止事件冒泡 从 catch:tap="xx" 改为 @tap.native.stop="xx"
8、wx:if 改为 v-if
9、wx:for="{{ list }}" wx:key="{{ index }}" 改为`v-for="(item,index) in list"
附言:
uni-app可以多端输出,也欢迎各平台之前的老项目向uni-app转换迁移。
vue h5项目转换uni-app指南:https://ask.dcloud.net.cn/article/36174
微信小程序转换uni-app指南及转换器:https://ask.dcloud.net.cn/article/35786
wepy转uni-app转换器:https://github.com/zhangdaren/wepy-to-uniapp
另一种有效的wepy转uni-app方法: https://ask.dcloud.net.cn/article/39125
mpvue 项目(组件)迁移指南、示例及资源汇总: https://ask.dcloud.net.cn/article/34945