微信小程序转uni-app注意事项

这篇具有很好参考价值的文章主要介绍了微信小程序转uni-app注意事项。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        如果你手头上有一套微信小程序的代码,怎样把它变成一个网页版或者app版本的呢?我推荐你使用uni-app。

        使用uni-app可以很方便的将微信小程序代码翻译成uni-app项目,通过uni-app项目又可以编译成h5、app或微信小程序版本。这样一来,写一份代码同时可以在三个端甚至更多地方工作,何乐而不为呢?

        首先我们要在官网下载uni-app的官方IDE工具HBuilderX-高效极客技巧,安装好后大概就像下面这样。

        微信小程序转uniapp,微信小程序,uni-app,android,html5

         接下来为了可以将现有的微信小程序代码转成uni-app项目,我们需要在插件市场中找miniprogram-to-uniapp v2插件,并安装miniprogram-to-uniapp v2 - DCloud 插件市场,这个安装很简单我就不多言了,只要你的HBuilderX是运行的状态,它会自动检测并下载安装。

微信小程序转uniapp,微信小程序,uni-app,android,html5

         

        准备工作做好了,首先通过打开目录将我们现有的微信小程序项目导进去。

微信小程序转uniapp,微信小程序,uni-app,android,html5

 在项目上右击,会有一个选项miniprogram-to-uniapp v2,点击以后弹出对话框

微信小程序转uniapp,微信小程序,uni-app,android,html5

选项基本不用动,这边需要留意的一点是这个输出目录好像不能随便乱改,改完便无法转换了。

 微信小程序转uniapp,微信小程序,uni-app,android,html5

        开始后等他转换就行,几分钟就可以完成。log里会有一些输出,提示你有哪些不兼容的。等转换完成后可以试着跑一下微信小程序试试,因为是从微信小程序转过来的,所以基本不会有什么问题。

        可能会有个别有语法问题的地方在编译的时候报错出来了,但我们打开了页面面对几千行代码无从下手怎么办呢?这个很好办,可以在插件市场里面找下面两款插件,一款是针对js代码的,一款是针对vue写法的。用不用的先装上再说。

        eslint-js - DCloud 插件市场

        eslint-plugin-vue - DCloud 插件市场

        装好后也不是立马就能用的,需要稍微改以下代码,然后保存,只要有保存的动作,他就可以检查整个文件,然后将报错的地方找出来。

        这两个插件一装,代码一改,基本上就是检查以下页面哪里有不兼容的插件,改掉就行了。

坑:

1. 如果在微信小程序中使用了插件,到uniapp中可能不会自动转换,需要在mainfest.json手动添加plugin依赖

"mp-weixin" : {
        "usingComponents" : true,
        "plugins": {
            "live-player-plugin": {
                "version": "1.3.5",
                "provider": "wx2b03c6e691cd7370"
            }
        },
}

2. 微信小程序中的富文本处理方式wxParse不能用了,uni-app会自动转成mp-html,如果需要拼接img中的src链接,可以使用domain字段

微信小程序转uniapp,微信小程序,uni-app,android,html5

将域名传进去,需要拼接的时候mp-html会自动帮你拼接的

3. 如果在调试app版时遇到运行正常而一旦debug就白屏的情况,这不是代码出了问题,而是你的包体积过大,加载不出来,这时候需要在page.json中将一些暂时用不到的page注掉,待调试完成再反注回来。虽然麻烦但只能这么做了。

4. 调试android时遇到一个bug,getCurrentPages获取到的页面对象page,没办法调用setData方法更新页面。这个问题在微信小程序及H5版本都是好的,网上看了很多帖子,没有能够正面的解决这一问题,只好退而求其次,使用uni推出的EventBus来解决了。

使用到两个方法,

    uni.$emit('updateTabBar', tabBar);
    uni.$on('updateTabBar',function(data){
            that.setData({
                tabBar: data
            });
        });
将需要更新的对象通过data字段传递,在需要更新的页面接收再调用setData方法更新。虽然麻烦一点也只能这么做了

5. h5版本跨域设置

    dev环境下的跨域设置很简单,只需要在mainfest.json添加以下配置即可,不需要修改后端代码,这边target直接设置为正式环境,使用时将请求地址的hosturl替换为uniapi即可。

微信小程序转uniapp,微信小程序,uni-app,android,html5

正式环境下的跨域配置就比较复杂了,需要前后端一起进行修改,并且一定要是在同域的服务器下才能配置成功。

首先后端需要在Web.Config下的system.webServer节点下配置以下节点

微信小程序转uniapp,微信小程序,uni-app,android,html5

先remove再add,可以把缓存清除掉。

Access-Control-Allow-Origin配置我们前端部署的端口号

如果需要传递cookie的话,就必须配置Access-Control-Allow-Credentials,同时前端在发送接口时需要带上withCredentials参数。

Access-Control-Allow-Headers,Access-Control-Allow-Methods就是一些基本配置了。

差不多了,试下成功了没。文章来源地址https://www.toymoban.com/news/detail-761373.html

到了这里,关于微信小程序转uni-app注意事项的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 个人微信小程序认证流程与注意事项

    最近在做微信小程序的认证,所以准备写一篇文章来讲解微信小程序认证的流程与相关注意事项,希望能够帮到有同样操作的朋友们。本文中说明的小程序指的是个人类的小程序,也就是无法拥有公司营业执照或个人经营许可证的普通个人单位。 当用户在拥有了自己的小程序

    2024年04月09日
    浏览(40)
  • 微信小程序确认收货组件无法调起的注意事项

    wx.openBusinessView - weappOrderConfirm 官方文档:小程序确认收货组件接入说明 交易信息参数可以使用transaction_id或merchant_id+merchant_trade_no来唯一指定要确认收货的订单。 注意,这笔订单需要处于待收货状态,否则会出现获取订单失败。(success,status: cancel) 当前确认收货的用户需

    2024年03月18日
    浏览(72)
  • h5跳转微信小程序方案及注意事项(vue方向)

    在正式开发工作之前,请优先熟读并查看微信开发文档。 需提前登录微信公众平台进入“公众号设置”的“功能设置”的“JS接口安全域名”、“业务域名”、“网页授权域名”内依次配置h5页面的相关域名地址(例如:www.baidu.com)这里不包含协议名称和端口,同时可在根目

    2024年02月09日
    浏览(106)
  • 微信小程序 background多个background背景图叠加以及连写注意事项

    background: url(\\\'https://xxxxxxxx.com\\\') no-repeat top/100% auto,linear-gradient(318deg, #3F0000 0%, #A9143A 100%); 效果: 坑点: 1:多个背景图叠加时(渐变也相当于图片)以逗号分割,越靠前图片叠加时层级越高。网上搜索时发现找到的都是说越靠后层级越高,但我测试的时候确实是越靠前越高。

    2024年02月15日
    浏览(58)
  • 微信小程序wx.getFuzzyLocation获取经纬度的成功使用示例,以及注意事项

    注意事项: 1. 微信小程序基础库必须在 2.25.0及以上 才可以用这个接口,并且微信开发者工具也要是最新的 2.这个定位接口在编译器中报错,只有在 真机中好用 (偶尔在编译器中也好用),可以使用真机调试进行开发查看效果 上代码。 第一步:先在小程序公众平台    开发

    2024年02月11日
    浏览(54)
  • 微信小程序使用vant组件的输入框搭配弹层选择器注意事项

    先看下页面代码: wxml js 效果: 点击: 选完确认: 在做这个效果的时候,输入框 van-field 必须得加入 readonly 这个只读属性,不然会导致用户手机触发默认键盘遮挡你的弹窗和选择器内容影响体验. 也不要用 disabled 来禁用输入框,样式会变成禁用状态下的样式很难改动,只需要设置为只

    2024年02月11日
    浏览(63)
  • HTML实现微信小程序跳转全指南,附代码示例和开发注意事项

    学习如何在HTML页面中实现微信小程序跳转,包括前端准备工作、签名验证、后端配置等详细步骤。本文提供了代码示例和开发注意事项,帮助您顺利完成微信小程序的跳转功能。

    2024年02月11日
    浏览(44)
  • uniApp微信小程序唤出授权头像昵称(微信授权登录)弹窗,及服务端用户信息解密注意事项

    头像昵称弹窗弹出条件:button授权按钮 + uni.getUserProfile API请求 1.H5部分 2.JS部分 注意事项: 不能嵌入其他API内调用,一定要在调用的方法中第一层执行(优先执行 uni.getUserProfile ) 正确做法 :必须第一步用户点击按钮,第二步调取 uni.getUserProfile API(调取 uni.getUserProfile 操作

    2024年02月11日
    浏览(68)
  • 微信小程序 - 页面插入添加 Banner 广告超详细教程(支持自定义样式、位置、大小等)及注意事项

    如果您需要点击弹出的广告,请访问: 微信小程序 - 页面插入广告(激励式广告)。 本文将从 0-1 完成整个过程,您只需要按照步骤操作即可, 代码干净整洁注释详细,快速将代码移植到您的微信小程序项目中, 如下图所示,底部 Banner 式卡片广告, 您可以将其嵌入到任何

    2024年02月08日
    浏览(157)
  • 微信小程序canvas画图案列,实现生成头像并保存,小程序新版canvas变化,小程序中canvas注意事项

    你一定见过很多制作头像的小程序,无论是国庆的红旗,圣诞的帽子,还是疫情的口罩,都可以用小程序生成应景的头像,那么具体的代码是怎么实现的呢?前些天帮别人做了一个生成姓氏头像的功能,里面的实现原理基本一致,都是通过Canvas实现,以生成姓氏头像为例,记录一下小程序的

    2024年02月09日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包