Antmove——小程序的多端统一框架,值得一试
ccwgpt 2024-10-04 14:04 36 浏览 0 评论
介绍
Antmove(中文:蚂蚁搬家),是一个小程序平台开发的统一解决方案,通过编写一次代码,编译成不同平台的小程序代码,如现如今使用比较多的微信小程序、支付宝小程序、百度智能小程序、头条小程序以及更多小程序平台。现Antmove已支持微信小程序和支付宝小程序的转换,其中百度智能小程序、头条小程序以及更多的支持也即将推出。
Github地址
https://github.com/ant-move/antmove
应用场景
开发指南
antmove 的初衷是提供一种小程序跨平台开发的解决方案,帮助开发者底层本实现小程序的跨平台开发(微信小程序、支付宝小程序、百度智能小程序、头条小程序),做到一套代码开发、多小程序平台运行的目的。
目前 antmove 已经帮助了多款微信小程序到支付宝小程序的迁徙,代码转换率高达 90%+,极大的降低了小程序开发企业的人力成本。工具不仅能做到运行时 diff 的抹平,也能部分做到一个 API 从无到有的过程以及缺失组件的支持。
1、特性
- 简单易使用,无学习成本,直接上手
- 转换覆盖率全面,及时跟进各小程序平台更新情况
- 配套详细的编译时日志/运行时日志工具
- 编译生成代码可读性强,可二次编程
- 二次编译支持
2、安装
vscode 转换插件,可以在VSCode的扩展中搜索Antmove下载安装转换插件来实现一键转换。
3、编译步骤
- 安装扩展(Antmove - antmove-vscode-plugin)
- 在 VsCode 中打开要转换的项目
- 打开 VsCode 命令面板
- Mac: command + shift + p
- Windows: ctrl + shift + p
- 输入 Antmove
- 运行 Antmove: Run antmove 命令
- 运行如上命令后会给出一个弹窗,选择转换后生成代码存储目录
- 转换完成
4、使用 npm 或 yarn 安装
推荐使用 npm 或 yarn 的方式进行开发,不仅可在开发环境轻松调试,也可放心地在生产环境打包部署使用
- 全局安装
$ npm install antmove -g
- 本地安装
$ npm install antmove --save
由于网络环境原因可以使用cnpm来进行安装
5、命令行使用
通过 npm 或 yarn 全局安装才能使用如下命令行
提供两种可用的命令行调用方式:
- antmove wx-alipay(使用前请将终端切换到需转换编译的微信小程序项目路径)
antmove wx-alipay ./dist/alipay-app
- antmove - 该命令更加灵活,可配置输出输出目录/编译模式等
antmove -i ./wechat-mini/project -o ./dist/alipay-mini/project --env development
如上的命令表示将 ./wechat-mini/project 微信小程序项目转换为支付宝小程序项目,转换到 ./dist/alipay-mini/project 目录
参数说明
- --input,-i
- 可选,编译源码目录,如果不传则是当前目录
- --output,-o
- 必传,编译输出目录
- --env,-e
- 可选(development/production),编译模式,生产模式代码会压缩,无编译日志及运行时日志
6、Node.js 使用方式
简单示例
const path = require('path'); const transformFramework = require('antmove'); const WechatPlugin = require('@antmove/wx-alipay'); let outputPath = path.join(__dirname, '../../dist'); let inputDirPath = path.join(__dirname, '../../examples/miniprogram-demo/miniprogram'); const App = transformFramework(); App.use( WechatPlugin, { entry: inputDirPath, dist: outputPath + '/alipaymini-demo', env: 'development' }) .start();
7、API
transformFramework
工具实例生成函数。
const transformFramework = require('antmove'); const App = transformFramework(); // 得到的 app 实例即可进行转换处理操作
App
- use | Function - App.use(plugin, pluginOptions) - 挂载插件到实例上,可挂载多个,按挂载顺序执行
- plugin: 转换插件
- pluginOptions: 转换插件配置项
- entry | String - 转换源码目录
- dist | String - 转换后代码输出目录
- env | String - 编译环境设置(env/prod)
- 默认值为生产环境
- remote | Boolean - 是否拉去远程拉取 polyfill 代码
- 默认开启
- start | Function - 开始编译操作
8、高级用法
- 支付宝代码与微信代码混合编写
- 微信小程序到支付宝小程序登录迁徙
9、计划推出
- 支付宝转百度能力支持
- 支付宝转微信能力支持
- 支付宝转头条能力支持
- 页面/组件维度转换能力支持
组件
截图一览
总结
如今前端技术和框架百花齐放,没有哪一个敢说最好,像Antmove这样的新产物或多或少都是一种思想的展现,无疑都是为了解决前端痛点,多端统一的问题,比如之前有介绍过的uniapp都是其中比较优秀的,还有Taro框架都值得探索一番,感兴趣的小伙伴都可以去学习学习!
相关推荐
- 自己动手写Android数据库框架_android开发数据库搭建
-
http://blog.csdn.net/feiduclear_up/article/details/50557590推荐理由关于Android数据库操作,由于每次都要自己写数据库操作,每次还得去...
- 谷歌开源大模型评测工具LMEval,打通谷歌、OpenAI、Anthropic
-
智东西编译|金碧辉编辑|程茜智东西5月28日消息,据科技媒体TheDecoder5月26日报道,当天,谷歌正式发布开源大模型评测框架LMEval,支持对GPT-4o、Claude3.7...
- 工信部:着力推动大模型算法、框架等基础性原创性的技术突破
-
工信部新闻发言人今日在发布会上表示,下一步,我们将坚持突出重点领域,大力推动制造业数字化转型,推动人工智能创新应用。主要从以下四个方面着力。一是夯实人工智能技术底座。通过科技创新重大项目,着力推动大模...
- 乒乓反复纠结“框架不稳定”的三个小误区
-
很多球友由于对框架的认知不清晰,往往会把“框架不稳定”当成一种心理负担,从而影响学球进度,其典型状态就是训练中有模有样,一旦进入实战,就像被捆住了手脚。通过训练和学习,结合“基本功打卡群”球友们交流发...
- 前AMD、英特尔显卡架构师Raja再战GPU,号称要全面重构堆栈
-
IT之家8月5日消息,知名GPU架构师拉贾科杜里(RajaKoduri)此前曾先后在AMD和英特尔的显卡部门担任要职。而在今日,由Raja创立的GPU软件与IP初创企...
- 三种必须掌握的嵌入式开发程序架构
-
前言在嵌入式软件开发,包括单片机开发中,软件架构对于开发人员是一个必须认真考虑的问题。软件架构对于系统整体的稳定性和可靠性是非常重要的,一个合适的软件架构不仅结构清晰,并且便于开发。我相...
- 怪不得别人3秒就知道软考案例怎么做能50+
-
软考高级统一合格标准必须三科都达到45分,案例分析也一直是考生头疼的一门,但是掌握到得分点,案例能不能50+还不是你们说了算吗?今天就结合架构案例考点,分享实用的备考攻略~一、吃透考点,搭建知识框架从...
- UML统一建模常用图有哪些,各自的作用是什么?一篇文章彻底讲透
-
10万+爆款解析:9大UML图实战案例,小白也能秒懂!为什么需要UML?UML(统一建模语言)是软件开发的“蓝图”,用图形化语言描述系统结构、行为和交互,让复杂需求一目了然。它能:降低沟通成本避...
- 勒索软件转向云原生架构,直指备份基础设施
-
勒索软件组织和其他网络犯罪分子正越来越多地将目标对准基于云的备份系统,对久已确立的灾难恢复方法构成了挑战。谷歌安全研究人员在一份关于云安全威胁演变的报告中警告称,随着攻击者不断改进数据窃取、身份泄露和...
- ConceptDraw DIAGRAM:释放创意,绘就高效办公新未来
-
在当今数字化时代,可视化工具已成为提升工作效率和激发创意的关键。ConceptDrawDIAGRAM,作为一款世界顶级的商业绘图软件,凭借其强大的功能和用户友好的界面,正逐渐成为众多专业人士的首选绘...
- APP 制作界面设计教程:一步到位_app界面设计模板一套
-
想让APP界面设计高效落地,无需繁琐流程,掌握“框架搭建—细节填充—体验优化”三步法,即可一步到位完成专业级设计。黄金框架搭建是基础。采用“三三制布局”:将屏幕横向三等分,纵向保留三...
- MCP 的工作原理:关键组件_mcp部件
-
以下是MCP架构的关键组件:MCP主机:像ClaudeDesktop、GitHubCopilot或旅行助手这样的AI智能体,它们希望通过MCP协议访问工具、资源等。MCP主机会...
- 软件架构_软件架构师工资一般多少
-
软件架构师自身需要是程序员,并且必须一直坚持做一线程序员。软件架构应该是能力最强的一群程序员,他们通常会在自身承接编程任务的同时,逐渐引导整个团队向一个能够最大化生产力的系统设计方向前进。软件系统的架...
- 不知不觉将手机字体调大!老花眼是因为“老了吗”?
-
现在不管是联系、交友,还是购物,都离不开手机。中老年人使用手机的时间也在逐渐加长,刷抖音、看短视频、发朋友圈……看手机的同时,人们也不得不面对“视力危机”——老花眼,习惯眯眼看、凑近看、瞪眼看,不少人...
- 8000通用汉字学习系列讲座(第046讲)
-
[表声母字]加(续)[从声汉字]伽茄泇迦枷痂袈笳嘉驾架咖贺瘸(计14字)嘉[正音]标准音读jiā。[辨形]上下结构,十四画。会意形声字,从壴从加,加也表声。注:从壴,字义与鼓乐有关;从加,字义与...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- 框架图 (58)
- flask框架 (53)
- quartz框架 (51)
- abp框架 (47)
- springmvc框架 (49)
- 分布式事务框架 (65)
- scrapy框架 (56)
- shiro框架 (61)
- 定时任务框架 (56)
- java日志框架 (61)
- mfc框架 (52)
- abb框架断路器 (48)
- beego框架 (52)
- java框架spring (58)
- grpc框架 (65)
- tornado框架 (48)
- 前端框架bootstrap (54)
- orm框架有哪些 (51)
- 知识框架图 (52)
- ppt框架 (55)
- 框架图模板 (59)
- 内联框架 (52)
- cad怎么画框架 (58)
- ssm框架实现登录注册 (49)
- oracle字符串长度 (48)