smart app converter

使用方式

git clone
npm link
killswan -w ./

使用前提

  • 对于template的传参,请使用扩展符{{...data}},如果是在你憋不住使用了{{a:1,b:2}}这种写法,对象逗号之间请不要换行,后续考虑支持下,暂时没时间了
  • 对于template,请不要给这个标签上加class
  • 一切模板到js的内容,请使用{{}}包裹,不管当前有没有报错,都要这么处理,不然会gg
  • 样式文件中,请尽量不要使用通配符*,否则会给讲其转换为所有的组件名字
  • 请定时查阅小程序官方文档,使用推荐语法开发

脚本都做了啥

模板相关

  • 使用<!--weixin begin--> your code <!--weixin end-->来标注独占功能
  • import模板的后缀名修改
  • 对不支持的组件替进行替换,目前替换成<view>
  • 对双向绑定的语法进行替换
  • 对事件的语法进行替换
  • 对指令的语法进行替换

js相关

  • 使用/***weixin begin***/ your code /***weixin end***/来标注独占功能
  • 对命名空间进行替换

样式相关

  • 支持less(注:less会替换到当前文件夹下的css文件)
  • 由于微信小程序不允许样式文件中background引用本地资源,统一做了base64转换
  • 对通配符*做了替换

其他

  • 对文件后缀名替换

TODO

  • 模板中template的传参需要看下实际情况
  • 对不支持的api需要warning
  • 对自定义组件需要优化
  • 对自闭合标签需要收集
  • 对json的配置需要优化
  • 没有对模板语法中的括号进行递归判断,默认用户的输入是合法的