面板小程序命令行工具介绍

Ray 体系提供配套的工程化解决方案。

由于多端构建的一些客观原因,在构建流程的设计上,必须将工程套件安装在项目内

项目内的依赖至少包含以下内容:

复制代码
{
  "dependencies": {
    "@ray-js/ray": "latest"
  },
  "devDependencies": {
    "@ray-js/cli": "latest"
  }
}

并且安装的版本一致。注意由于 yarn.lock 等其他锁版本的配置造成影响。

提示 :如无法确定,可删除 node_modules 和 yarn.lock 后重装依赖。

命令行调用

在项目内安装完成后,可通过 npx 在终端调用唤起。

复制代码
{
  "devMode": "ray"
}

# 终端调用
npx ray start -t tuya

也可在 package.json 文件的 scripts 中直接使用。

复制代码
{
  "scripts": {
    "start:web": "ray start -t web",
    "start:wechat": "ray start -t wechat",
    "build:web": "ray build -t web",
    "build:wechat": "ray build -t wechat"
  }
}

注意事项

  • 务必保证 @ray-js/* 依赖的版本最新,否则可能出现 bug。
  • 可使用命令 yarn upgrade --scope @ray-js --caret 进行更新操作。

start 启动/预览

启动构建/预览服务,并实时监听项目文件变更。

Tuya MiniApp Tools 自动化执行 start

Tuya MiniApp Tools 可配置启动项目时自动执行 start ,不需要手动在控制台执行 ray start。 project.tuya.json 中配置 devMode: ray,即可在启动项目时关联ray start。

复制代码
{
  "devMode": "ray"
}

命令说明

ray start ./my-app

注意 :其中 my-app 表示项目所在目录。

复制代码
Usage: ray-start [options] [cwd]
 
启动实时编译/预览。
 
Options:
  --source <folder>        源码目录,默认值 src
  --output <folder>        产物目录
  --mini                   启用压缩构建产物,默认值 true
  --no-mini                禁用压缩构建产物
  -t --target <target>     目标平台
  -a --analyze             开启 analyze 分析,默认值 false
  --type <type>            构建类型,可选值 app 和 component,默认值 app
  --transform-mode <mode>  组件转换类型,可选值 auto 和 pure,默认值 auto
  -h, --help               Display help for this command

Options

source

项目源码目录,默认为 src。

output

构建产物生成目录。

mini

开启后会将生成文件进行一定程度的压缩,会牺牲一定的编译时间。由于 Tuya MiniApp Tools 的限制,启用压缩后一般可符合上传要求。build 模式下默认开启 mini。

注意 : dev 模式下的压缩不等同于 build 模式,实际应用体积大小应以 build 结果为准。

no-mini

禁用压缩构建产物。

target

目标平台,可选值 web、wechat、tuya、ios 和 android。

analyze

启用 analyze 可视化分析。详细信息,参考 Webpack Bundle Analyzer

type

构建类型,可选值 app 和 component。

transform-mode

组件转换类型,仅在类型为 component 下有效。 可选值 auto 和 pure。

build 构建/预览

生成可用于生产环境部署的代码。

Tuya MiniApp Tools 自动化执行 build

Tuya MiniApp Tools 可配置打包时自动执行 build 的功能,不需要手动在控制台执行 ray build。 project.tuya.json 中配置 devMode: ray,即可在上传项目时关联ray build。

复制代码
{
  "devMode": "ray"
}

命令说明

ray build ./my-app

注意 :其中 my-app 表示项目所在目录。

复制代码
Usage: ray-build [options] [cwd]
 
执行构建应用/组件
 
Options:
  --source <folder>        源码目录,默认值 src
  --output <folder>        产物目录
  --mini                   启用压缩构建产物,默认值 true
  --no-mini                禁用压缩构建产物
  -t --target <target>     目标平台
  -a --analyze             开启 analyze 分析,默认值 false
  --type <type>            构建类型,可选值 app 和 component,默认值 app
  --transform-mode <mode>  组件转换类型,可选值 auto 和 pure,默认值 auto
  -h, --help               Display help for this command

Options

source

项目源码目录,默认为 src。

output

构建产物生成目录。

mini

开启后会将生成文件进行一定程度的压缩,会牺牲一定的编译时间。由于 Tuya MiniApp Tool 的限制,启用压缩后一般可符合上传要求。build 模式下默认开启 mini。

注意 : dev 模式下的压缩不等同于 build 模式,实际应用体积大小应以 build 结果为准。

no-mini

禁用压缩构建产物。

target

目标平台,可选值 web、wechat、tuya、ios 和 android。

analyze

启用 analyze 可视化分析。详细信息,参考 Webpack Bundle Analyzer

type

构建类型,可选值 app 和 component。

transform-mode

组件转换类型,仅在类型为 component 下有效。可选值 auto 和 pure。

相关推荐
UXbot1 天前
一人独立交付 UI + 前端:AI 驱动 UI 设计工具的五大功能模块深度评测
前端·低代码·ui·设计模式·交互
kobesdu1 天前
【ROS2实战笔记-19】ROS2 生命周期节点的启动顺序、状态转换陷阱与热备方案
java·前端·笔记·机器人·ros·ros2
诚实可靠王大锤1 天前
React Native 输入框与按钮焦点冲突解决方案(rn版本0.70.3)
前端·javascript·react native·react.js
neo_Ggx231 天前
Maven 版本管理详解:SNAPSHOT、Release 与 Nexus 仓库的区别和影响
java·maven
matlabgoodboy1 天前
软件开发定制小程序APP帮代做java代码代编写C语言设计python编程
java·c语言·小程序
江离w1 天前
新版vibecoding项目初始化指令
java
kyriewen1 天前
测试妹子让我写单测,我偷偷用AI一天干完一周的活
前端·chatgpt·cursor
2601_957780841 天前
Claude Code 2026年最新部署指南:从环境搭建到技能扩展
前端·人工智能·ai编程·claude
源远流长jerry1 天前
Linux 网络发送机制深度解析:从应用到网线
linux·服务器·网络·网络协议·tcp/ip
tongluowan0071 天前
Spring MVC 底层工作流程+源码分析
java·spring·mvc