开发者社区 问答 正文

小程序对WebView限制多多的意义在哪里?支持纯H5小程序才是超越微信的必由之路

近期对一个H5的专业应用切换到微信小程序的过程,失望不已,包括: 1、对npm等社区的疏远(小程序框架不能使用的常用npm包清单) 2、自创MVVM框架相比React、Angular、Vue的不足 3、“原生”页面的渲染性能不如纯H5(这篇对小程序的期待里面有分析)

本想看看支付宝小程序如何,却发现居然与微信一个样。

按我理解,微信自造一套车轮,无非以下原因: 1、对游戏的支持:原生控件,对游戏渲染有价值,但阻碍了Web应用的开发,且性能反而差H5一大截; 2、对加载体验的追求:小程序代码统一上传到微信服务器; 3、对安全性的追求:只支持https访问指定域名。

而支付宝小程序几乎完全模仿微信小程序的API,难道是为了 降低**“微信小程序切换到支付宝”**的难度吗? 支付宝并没有游戏渲染的需求,第1点原生控件带来的问题,要远远多于其收益的;第2、3点与支不支持H5并不冲突。

只支持自成体系的原生控件开发,不支持H5带来的问题: 1、很难借用V8或者通用浏览器引擎带来的广泛支持与改进; 2、与npm生态渐行渐远; 3、从开发、调试到打包的工具链都要独立开发

如果支付宝小程序的定位,是高于微信小程序的,我觉得完全应该拥抱npm生态的H5开发者: 1、通过WebView或新的控件,全面支持npm生态,支持纯H5应用的接入: 最重要的包括npm依赖管理、Webpack打包框架、MVVM三大框架(React、Angular、Vue)及生态、WebStorm消息框架,以及一系列优秀的js组件); 2、为纯H5小程序提供JSSDK,连接支付宝API; 3、研发工具链的兼容:通过浏览器插件,来实现小程序环境的模拟,让开发者可以用自己喜欢的工具链。

说完了,我的第一个小程序最后完全就嵌套在WebView里,但是即使这样还是避免不了一个尴尬的问题,让我不得不继续寻找小程序能否在对npm的有限支持下,做到: 通过环境变量来配置后台地址

展开
收起
chentao106 2019-09-24 13:22:18 1660 分享 版权
阿里云 AI 助理回答

理解您在将H5应用迁移到微信小程序和支付宝小程序过程中遇到的挑战,特别是对于生态兼容性、框架限制以及性能差异的担忧。确实,微信和支付宝小程序都设计了自己的封闭生态系统,这与Web开发中广泛采用的开放标准和丰富生态存在一定的脱节。

针对您的期望和提出的建议,虽然目前支付宝小程序和微信小程序主要基于自有的MVVM框架,并且对npm生态的支持有限,但阿里云提供了一系列解决方案和服务,可以帮助开发者更好地适应这些平台并提升开发效率:

  1. Serverless服务:通过阿里云的Serverless服务(如函数计算FC),您可以构建灵活的后端逻辑,支持不同环境下的API调用。这样,您可以通过环境变量配置后台地址,实现跨平台的适配,无需直接修改前端代码。

  2. Webview集成方案:虽然直接在小程序中完全依赖WebView来运行纯H5应用可能不是最理想的方案,但可以考虑在特定场景下使用Webview作为补充,以接入那些不便于重写的H5组件或库。同时,利用阿里云的移动推送服务,可以增强Webview内应用的消息推送能力。

  3. 工具链整合:虽然支付宝小程序和微信小程序官方提供的IDE可能无法直接兼容WebStorm等通用开发工具,但您可以探索社区中的第三方插件或工具,比如一些支持跨平台开发的小程序转换器,它们尝试将Vue、React等框架的代码转换为小程序兼容的格式。此外,阿里云的云开发平台提供了统一的开发环境和资源管理,有助于简化多平台开发流程。

  4. 安全性和性能优化:虽然原生控件在某些方面可能不如H5灵活,但阿里云提供了性能监控(ARMS)和安全防护(SAS)等服务,帮助开发者监控和优化小程序的性能,确保数据安全和用户隐私保护。

  5. 拥抱开放标准的努力:虽然当前支付宝小程序和微信小程序的生态相对封闭,但随着技术的发展和行业需求的变化,未来可能会有更多向开放标准靠拢的趋势。阿里云也在不断推动和参与开源生态建设,例如对Node.js及前端技术栈的贡献,长期看有望促进小程序平台与npm生态更紧密的融合。

综上所述,虽然当前面临一些挑战,但通过合理利用阿里云的服务和技术手段,可以在一定程度上缓解这些问题,提高开发效率和应用质量。同时,持续关注相关平台的更新和发展趋势,也是应对未来变化的关键。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答