Home

Awesome

wwto Build Status license javascript style guide version

wwto: wuba wechat mini-program to other mini-program

简介

wwto是一款支持将原生微信小程序转换成其他小程序的工具集合。
使用wwto,几乎不需要对已有的微信小程序做任何改动,可以接近零成本获得百度小程序支付宝小程序头条小程序

前提

安装

  npm i wwto -g

  #or
  yarn global add wwto

使用

**注意:**如果包含插件,请将插件的源码拷贝到:src/plugins/xxx目录下,xxx为被调用插件名称。

命令行

  # 查看帮助
  wwto --help
  # 查看转换命令使用说明
  wwto build --help
  # 查看源码兼容性检测使用说明
  wwto lint --help
  # 查看版本号
  wwto -v

  # 转换成百度小程序
  wwto build -p baidu -s src -t dist/baidu
  # 检测源码对百度小程序的兼容性
  wwto lint -p baidu -s src
  
  # 转换成支付宝小程序
  wwto build -p alibaba -s src -t dist/alibaba
  # 检测源码对支付宝小程序的兼容性
  wwto lint -p alibaba -s src
  
  # 转换成头条小程序
  wwto build -p toutiao -s src -t dist/toutiao
  # 检测源码对头条小程序的兼容性
  wwto lint -p toutiao -s src
  
  # 转换成百度&&支付宝&&头条小程序
  wwto build -s src -t dist
  # 检测源码对百度&&支付宝&&头条小程序的兼容性
  wwto lint -s src
  
  # 转换插件调用方式
  wwto plugin -s dist/baidu

启动项目

  npm install
  # 安装依赖

  npm run build
  # 构建项目

  npm run dev
  # 运行项目

  jest --coverage
  # 检测单元测试覆盖率

打包工具

const gulp = require('gulp');
const wwto = require('wwto');

// 转换成百度/支付宝/头条小程序
gulp.task('build', function(cb) {
    wwto.toAll({
      source: './src',
      baiduTarget: './dist/baidu',
      alibabaTarget: './dist/alibaba',
      toutiaoTarget: './dist/toutiao',
    });
});

// 检测源码对各平台的兼容性
gulp.task('lint', function(cb) {
    wwto.lintAll({
      source: './src'
    });
});

注意事项

注意事项是各平台不支持且无法通过本工具转换完成的一些点,如果要开发跨平台的应用需要规避或者降级处理。

百度小程序

头条小程序

支付宝小程序

贡献

欢迎参与 wwto 项目的开发建设和讨论。

提交 pull request 之前请先提 [Issue 讨论].