---
title: start 启动/预览
summary: 介绍 ray start 命令的用法、配置及各项选项说明，用于启动实时编译和预览服务。
questions:
  - 如何配置 Tuya MiniApp IDE 自动执行 start？
  - ray start 的 source 和 output 选项默认值是什么？
  - mini 和 no-mini 选项的区别是什么？
  - target 支持哪些平台？
  - start 的构建类型 app 和 component 有什么区别？
  - transform-mode 在什么情况下有效？
  - 如何开启 analyze 分析？
---

# `start` 启动/预览

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

## Tuya MiniApp IDE 自动化执行 start

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

```json
{
  "devMode": "ray"
}
```

## 命令说明

`ray start ./my-app`

> **注意**：其中 `my-app` 表示项目所在目录。

```bash
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 IDE 的限制，启用压缩后一般可符合上传要求。`build` 模式下默认开启 `mini`。

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

### no-mini

禁用压缩构建产物。

### target

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

### analyze

启用 `analyze` 可视化分析。详细信息，参考 [Webpack Bundle Analyzer](https://www.npmjs.com/package/webpack-bundle-analyzer)。

### type

构建类型，可选值 `app` 和 `component`。

## transform-mode

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