使用指南

移动 PaaS 平台以 node 包形式为组件开发者提供了本地开发、调试工具,可以模拟组件运行时设计时两种形式。使用步骤如下:

1. cli 工具

安装 cli 工具,用于初始化工程

# 全局安装
npm i -g mysoft-paas-cli
# or
yarn global add mysoft-paas-cli

2. 初始化工程

创建项目目录(如:/home/dev/workspaces),使用 cli 命令初始化

# 切换到项目目录
cd /home/dev/workspaces
# 运行初始化命令
paas-cli-init your_project
# 安装依赖
yarn [install]
# 运行,command必选,可选项start|startApp|design。start预览、调试运行时界面,startApp预览、调试App,design设计时
yarn run [command]

# 初始化后目录结构如下
modules/               [存放钩子组件或者公共方法]
packages/              [存放业务组件]
    example-component/ [示例组件]
static/                [App调试时候存放原生插件]
package.json           [依赖、运行脚本等]

首次启动后会拷贝系统模板到项目根目录,也可以在根目录下手动创建 index-dev.html 或者 index-app-dev.html 模板,以便开发调试。

3. 启动本地开发程序

设计时、运行时以及 App 运行时程序

  • package.json 文件默认如下
{
  "name": "workspace",
  "version": "1.0.0",
  "author": "paas-cli",
  "license": "ISC",
  "description": "paas-cli",
  "private": true,
  "scripts": {
    "start": "paas start",
    "design": "paas design",
    "startApp": "paas startApp"
  },
  "dependencies": {
    "engine-mobile": "git+ssh://git@git.mysoft.com.cn:mic-paas/webapp.git"
  }
}

paas-cli 默认提供以下命令,方便开发

paas start|startApp      // 启动运行时
paas design     // 启动设计时

如果手工安装或误删除,可以以此作为参考重新配置

安装依赖

运行前需要首先使用 yarn (推荐,后续介绍默认采用 yarn )或 npm 安装依赖

yarn
// or
npm i

由于目前开发工具部分依赖项为 git 仓库形式提供,且权限不是完全开放,所以新安装的用户可能存在依赖安装失败的情况,请邮件给陈玲chenl23@mingyuanyun.com申请开通PaaS客户权限。

运行时

模拟真实运行可以调运行时组件,startApp 用于本地调试 App,具体参考APP 调试章节

yarn start|startApp

设计时

启动开发工具设计界面。(可对一些属性进行个性化的配置)

yarn design

4. 配置

服务端构建时,组件列表、配置信息等通过命令传入,为方便本地开发,在开发者工具 package.json 中支持 appConfig 配置

{
  "appConfig": {
    /* 本地配置 */
    "startPort": "本地运行时端口",
    "designPort": "本地设计时端口",
    "startAppPort": "本地App运行时端口",
    /* 服务端模拟配置 */
    "appId": "你的appId",
    "appAssetsVersion": "资源包版本,对应PaaS后端的应用版本",
    "env": "环境,test、beta、prod",
    "engine": "引擎版本",
    "apiDomain": "业务域名",
    "fetchMetaApi": "元数据获取api",
    "fetchVersionApi": "版本更新api",
    "assetsPublicPath": "公共资源输出路径,app默认/,其他按需",
    "sentryUrl": "用于记录日志信息",
    "pluginIds": "钩子组件id列表,多个值逗号分隔,即钩子组件package.json>name"
  }
}

5. 组件调试排错

在开发组件及测试应用过程中,调试排错都是不可避免的,本文档将引导你如何调试应用。

PaaS 平台提供了多种应用类型,不同类型的应用调试方式也不一样。根据应用类型,本文档分为:

其他

排错支持

实际开发中,如果同时开发多组件,又希望临时屏蔽或者启用个别组件,可以在 package.json 中新增 excludeDirs 或 includeDirs 属性,分别代表排除某目录、或包含某目录,配置如下:

{
  "excludeDirs": ["packages/component1"],
  // or
  "includeDirs": ["packages/component1"]
}