zoukankan      html  css  js  c++  java
  • 【推荐】开源项目minapp-重新定义微信小程序的开发

    minapp

    重新定义微信小程序的开发

    官网:https://qiu8310.github.io/minapp/

    作者:Mora

    minapp

    重新定义微信小程序的开发

    使用

    1. 用 npm 安装命令行工具: npm install -g @minapp/cli --registry "https://registry.npmjs.org/" (避免从淘宝镜像上安装,它上面的还是老版本,已经给他们提了一个 issue
    2. 初始化项目:minapp init <你要创建项目的文件夹> (同时支持创建 js 和 ts 项目)
    3. 安装两个 vscode 插件:minappdot-template(可选,但建议安装)

    功能概览(在 vscode 编辑器下)

    wx 所有接口都有智能的提醒,同时包括接口的参数,和返回值

    wx接口示例

    提供一个 promise 版的 wx 接口 wxp,和 wx 一样,只是它会将 wx 中所有需要 success/fail/complete 三个参数的函数 promise 化

    • wxp 中也支持使用 success 回调
    • wxp 给 Promise 添加了一个 finally 方法;如,你可以这样用 wxp.getUserInfo().finally(() => { /* do something */ })

    wxp示例

    集成 mobx,可以非常方便的修改全局数据,并自动更新当前页面状态

    • 注入 Store 只需要在 appify 函数中添加 Store 对象即可
    • Page 和 Component 中都默认注入了 Store 对象,你可以使用 this.store 获取

    mobx

    wxml 模板语言支持语法高亮,组件智能提示,组件属性智能提示(需要安装 vscode 插件 minapp

    wxml

    json 文件支持自动提示

    json

    新建一个 page 文件夹时,自动生成相关文件(需要安装 vscode 插件 dot-template

    • 自动为你创建相关的同名的文件,包括 js/json/wxml/scss,并且这些模板文件你可以随时在 .dtpl 文件夹下修改
    • 自动将新建的 page 路径注入到 app.json 文件夹中

    新建 Page 示例

    小程序 Page 中支持函数自动提示

    Page 中的函数自动提示示例

    同理,新建组件文件夹时,也会创建相关的文件;同时组件中的生命周期函数也会自动提示

    Component 示例

    关于此仓库说明

    这不是一个项目,是有好几个项目组合而成的,用的是 lerna 开发工具,其它项目在 packages 目录下,这里对其中的几个主要项目做个简要概述

    • minapp-generator: 此模块负责解析微信官方文档,生成结构化的数据,供其它模块使用
    • minapp-core: 微信所有原生 api 的 TypeScript 定义,另外提供一个 promise 版的 wx 接口
    • minapp-mobx: 开发框架,集成 mobx
    • minapp-compiler: 一个小程序的编译器,集成 webpack 和 webpack-dev-server
    • minapp-webpack-utils: 编译器中需要使用的 webpack 相关的插件
    • minapp-cli: 提供给用户的命令行工具,集成了 minapp-compiler,并可以快速创建一个新项目
    • minapp-vscode: vscode 插件,为wxml提供语法高亮、标签与属性的自动补全

    TODO

    • [ ] 小程序中的静态资源自动上传到 七牛 (完成我的 file-uploader 组件)
    • [ ] 实现类似于 vue 的功能,可以将所有文件写在一个页面上
    • [ ] webpack 升级到 4.0
    • [ ] 写一个小程序的自动化测试框架

    下一篇:作者亲著,重新定义微信小程序开发 —— 上篇

  • 相关阅读:
    Linux-命令-parted
    Linux-磁盘
    Linux-bash需要转意的字符
    Linux-命令-su-sudo-visudo
    Linux-命令-用户登录及日志查询
    Linux-练习-批量创建用户5密码长度
    250W电源带i7+GTX1080?
    ICMP type code 对应表(转)
    U盘FAT32转换NTFS格式
    Maxdos 9.3不能引导系统进入Maxdos
  • 原文地址:https://www.cnblogs.com/ikcamp/p/8504809.html
Copyright © 2011-2022 走看看