php小程序前端转化为h5

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php小程序前端转化为h5相关的知识,希望对你有一定的参考价值。

对于h5中生成海报大家都不陌生 最常见的方法是前端生成 用html2canvas 但是弊端就是画质太差 网上很多方法 但是依然不是很管用 最近做的h5中 用了php来生成 画质简直美得不行 1)采用熟练的JSP框架,每人一天可以改造2个页面左右,计划投入2人,风险最小虽然开发方法类似网页,但实际上是一种只能运行在微信自己开发的浏览器中的特殊网页,它所能够使用的所有功能都必须由微信浏览器提供;
H5页面:这是真正的网页应用,运行在通用浏览器中,各种浏览器虽然在细微上有所差别,但总的来说是一致的,微信浏览器同时也是一种通用浏览器,能够支持真正的网页应用。
因此我们才有可能在微信小程序和H5页面之间进行跳转,但这种跳转是受到微信浏览器的严格控制的,因此我们有必要了解这些控制包括哪些。
H5页面所在的域名:假设你需要调转的H5页面URL为https://www.mysite.com/h5page,那么这里所说的域名就是www.mysite.com,另外你没有看错,这个URL必须是https,如果你还没有为你的网站加上SSL,那么就先去申请一个证书吧(注意必须是公开申请的证书,不能是自签名的,微信不认哦!)
好了,这些都准备好了,让我们开始开发一个小例子。
由于web-view组件是一个全屏组件,不能和其它小程序组件合用,因此需要独立占据一个页面,所以我们到例子就是在小程序的A页面加一个链接,跳转到B页面,然后在B页面使用web-view组件来加载H5页面。

2)采用主流分布式Vue框架,时间未知,风险未知;

首先自我介绍下,本人是一名JAVA开发工程师,平时喜欢研究相关主流技术和挑战自己。对此我还是比较倾向于第二种解决方案,但是第二种解决方案无疑是最复杂,最耗时,最未知,风险最大。公司内没有人愿意承接。于是我抱着学习和研究的态度以及对主流技术的向往,我找到我们领导我是这样说的:我还是比较建议公司采用第二种方案。1)这无疑是给我们进行敲门砖及学习的机会;2)这是公司提升前端技术能力与主流技术看齐的机会。最后公司同意了我建议,采用方案二,有我来承接此事,进行牵头负责。

中间心酸过程忽略,刚接下来第一天就后悔了,VUE用都没用过,还怎么玩。于是我花了大量的时间,看了大量文献,我这里使用到是Vue 2 + Vant 2 + axios + router。原来并不是什么网址拿来就可以设置跳转的,你的小程序中就不能直接跳转到百度上去,小程序能够跳转的域名必须在业务域名中进行注册,总算这次是在小程序开发号里面设置了,但注意在服务号的设置里也有业务域名这个设置,不要搞混了(话说微信起名也太没有想象力了,简直是一坨浆糊)。这时候控制权已经从小程序转移到了H5页面,但微信页面跳转内部的机制比较复杂,涉及到了OAuth认证之类的,所以这个错误已经是H5页面报的了,这就需要到H5页面关联的服务号中去进行设置,这次设置的项目叫做网页授权域名,在公众号设置的功能设置里由于小程序官方没有提供外部H5网页直接跳转到小程序的api,所以目前只支持小程序内嵌H5,并且只有内嵌的H5才能跳回小程序在微信开发中工具里返回“"base_resp":"ret":-1”时,需要点左上角“设置”--“项目设置”--勾选“不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书” 源码中验证使用的是session 来校验验证码是否正确。我这边前端是小程序无法存session改用框架自带的缓存。
这里讲一点转Taro的调试经验,有报错的文件先拎出来放在一边,因为es5,6语法差异,很多js文件转es6是不支持的,所以会报错,建议是先把所有报错的文件注释,或者改成es6写法再转。我这边是去掉了很多的文件才转成功了的。这里需要自己一步一步调试解决报错,转成功之后根目录多出来一个taroConvert的文件夹这说明已经转Taro成功了,接下来就是运行以及二次开发。

进入taroConvert文件夹(二次开发就在这个文件里面,小程序代码不用管了),执行命令 npm install 或者cnpm install 先拉取所有依赖。
可以看一下package.json文件的运行命令以及安装的依赖,我这里是要运行H5的,输入命令 npm run dev:h5打开H5开发模式,这个步骤有可能会有个nerv.js不存在的报错,可以安装一下,然后在你文件src下面的的app.js import一下。
执行命令 import Nerv from 'nervjs',这个报错就会解决。其它的页面代码报错可以自己调试。开启成功的话浏览器中会打开127.0.0.1:8082的窗口运行项目。
参考技术A 把小程序html里面的如下标签对应改成小程序的标签,即可快速转化成H5的页面!
介绍个好用的工具,那便是miniprogram-to-uniapp自动转换工具。
2.全局安装此工具,命令行如下
npm install miniprogram-to-uniapp -g
登录后复制
3.查看工具版本号,命令行如下
wtu -V
登录后复制
回车若显示该工具版本号,则证明安装成功

4.开始进行转换,命令行如下
//冒号里面是小程序的项目路径

wtu -i "E:\其他\patient-wechat\miniprogram"

登录后复制
回车后即可以在源项目同及目录得到一个后缀为_uni的目录,即转换成功。
参考技术B 1、使用uni-app转换:uni-app是一款使用Vue.js开发跨平台应用的前端框架,可以将小程序前端代码转换为H5应用,它支持多种平台,包括微信小程序、支付宝小程序、百度小程序、H5、App等。

2、使用Taro转换:Taro是一款开源的多端统一开发框架,可以将小程序前端代码转换为H5应用,它支持多种平台,包括微信小程序、支付宝小程序、百度小程序、H5、App等。
参考技术C php小程序前端转化为h5,php微信小程序开发的优势是成本更低。对于两类人来说,小程序可以大大降低运营成本,从开发成本到运营推广成本,小程序的花费仅为APP的十分之一,无论是对创业者还是传统商家来说都是一大优势。 参考技术D 将小程序前端代码转换为H5需要使用一些小程序转换工具,例如mpvue、taro等,可以将小程序前端代码转换为H5代码。

以上是关于php小程序前端转化为h5的主要内容,如果未能解决你的问题,请参考以下文章

美团点评开源用 Vue.js 开发小程序的前端框架 mpvue

前端开发总监(80-150万,北京)

微信小程序的动画效果

微信小程序的动画效果

美团开源用 Vue.js 开发小程序的前端框架 mpvue

小程序及H5如何获取公众号code?