minidev 1.0.3 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/assets/web-sim/devtool/index.html +18 -0
  2. package/assets/web-sim/devtool/main.js +2 -0
  3. package/assets/web-sim/devtool/main.js.LICENSE.txt +47 -0
  4. package/assets/web-sim/index.html +17 -0
  5. package/assets/web-sim/main.js +2 -0
  6. package/assets/web-sim/main.js.LICENSE.txt +82 -0
  7. package/assets/web-sim/simulator/index.html +18 -0
  8. package/assets/web-sim/simulator/main.js +2 -0
  9. package/assets/web-sim/simulator/main.js.LICENSE.txt +67 -0
  10. package/docs/guide/base/cli.md +37 -0
  11. package/docs/guide/base/node-js-api.md +31 -0
  12. package/docs/guide/base/quick-start.md +135 -0
  13. package/docs/guide/commands/build.md +103 -0
  14. package/docs/guide/commands/config.md +79 -0
  15. package/docs/guide/commands/dev-daemon-commands/ide.md +70 -0
  16. package/docs/guide/commands/dev-daemon-commands/preview.md +54 -0
  17. package/docs/guide/commands/dev-daemon-commands/remote-debug.md +63 -0
  18. package/docs/guide/commands/dev-daemon-commands/web.md +110 -0
  19. package/docs/guide/commands/dev.md +150 -0
  20. package/docs/guide/commands/download-assets.md +48 -0
  21. package/docs/guide/commands/ide.md +117 -0
  22. package/docs/guide/commands/index.md +19 -0
  23. package/docs/guide/commands/login.md +53 -0
  24. package/docs/guide/commands/preview.md +121 -0
  25. package/docs/guide/commands/remote-debug.md +137 -0
  26. package/docs/guide/commands/upload.md +95 -0
  27. package/docs/guide/experiences/auth.md +65 -0
  28. package/docs/guide/experiences/client-type.md +16 -0
  29. package/docs/guide/experiences/config.md +127 -0
  30. package/docs/guide/experiences/sandbox.md +12 -0
  31. package/docs/guide/experiences/scene.md +33 -0
  32. package/index.d.ts +65 -7
  33. package/lib/index.js +1 -1
  34. package/lib/index.js.LICENSE.txt +195 -0
  35. package/lib/worker.js +2 -0
  36. package/lib/worker.js.LICENSE.txt +14 -0
  37. package/package.json +8 -6
@@ -0,0 +1,67 @@
1
+ /*
2
+ object-assign
3
+ (c) Sindre Sorhus
4
+ @license MIT
5
+ */
6
+
7
+ /*!
8
+ * Determine if an object is a Buffer
9
+ *
10
+ * @author Feross Aboukhadijeh <https://feross.org>
11
+ * @license MIT
12
+ */
13
+
14
+ /*!
15
+ * mime-db
16
+ * Copyright(c) 2014 Jonathan Ong
17
+ * MIT Licensed
18
+ */
19
+
20
+ /*!
21
+ * mime-types
22
+ * Copyright(c) 2014 Jonathan Ong
23
+ * Copyright(c) 2015 Douglas Christopher Wilson
24
+ * MIT Licensed
25
+ */
26
+
27
+ /*! *****************************************************************************
28
+ Copyright (c) Microsoft Corporation.
29
+
30
+ Permission to use, copy, modify, and/or distribute this software for any
31
+ purpose with or without fee is hereby granted.
32
+
33
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
34
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
35
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
36
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
37
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
38
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
39
+ PERFORMANCE OF THIS SOFTWARE.
40
+ ***************************************************************************** */
41
+
42
+ /** @license React v0.19.1
43
+ * scheduler.production.min.js
44
+ *
45
+ * Copyright (c) Facebook, Inc. and its affiliates.
46
+ *
47
+ * This source code is licensed under the MIT license found in the
48
+ * LICENSE file in the root directory of this source tree.
49
+ */
50
+
51
+ /** @license React v16.14.0
52
+ * react-dom.production.min.js
53
+ *
54
+ * Copyright (c) Facebook, Inc. and its affiliates.
55
+ *
56
+ * This source code is licensed under the MIT license found in the
57
+ * LICENSE file in the root directory of this source tree.
58
+ */
59
+
60
+ /** @license React v16.14.0
61
+ * react.production.min.js
62
+ *
63
+ * Copyright (c) Facebook, Inc. and its affiliates.
64
+ *
65
+ * This source code is licensed under the MIT license found in the
66
+ * LICENSE file in the root directory of this source tree.
67
+ */
@@ -0,0 +1,37 @@
1
+ # CLI 风格使用
2
+
3
+ 支付宝小程序 CLI 最常见的使用方式是使用 CLI 风格进行调用,和对应的指令集使用方式可以通过 `-h` 参数打开帮助信息,也可以参照[指令列表](../commands/index.md)中的对应指令文档了解详细使用方式
4
+
5
+ ````
6
+ Usage: minidev [options] [command]
7
+
8
+ 小程序开发 CLI 工具
9
+
10
+ Options:
11
+ -v, --vers 输出当前版本
12
+ -h, --help display help for command
13
+
14
+ Commands:
15
+ build [options] 构建编译小程序
16
+ clean-build-cache [options] 清除构建缓存
17
+ dev [options] 启动开发服务器 DevServer
18
+ preview [options] 发起真机预览
19
+ login [options] 进行工具授权
20
+ remote-debug [options] 发起真机调试
21
+ pack [options] 打包源码
22
+ upload [options] 上传发布小程序
23
+ ide [options] 启动IDE
24
+ download-assets [options] 下载离线资源包
25
+ config 设置管理
26
+ help [command] display help for command
27
+ ````
28
+
29
+ ## 指定项目目录
30
+
31
+ 默认时 minidev 指令会以当前目录 (`cwd`) 作为小程序项目的根目录来处理小程序相关逻辑,但是当有必要时,和小程序项目有关的指令可以通过添加 `-p` 参数不切换 `cwd` 来指定小程序项目的目录
32
+
33
+ ````shell
34
+ minidev build -p /path/to/your/mini-program
35
+ ````
36
+
37
+
@@ -0,0 +1,31 @@
1
+ ---
2
+ slug: node-js-api
3
+ title: Node.JS API 风格使用
4
+ ---
5
+
6
+ # Node.JS API 风格使用
7
+
8
+ 支付宝小程序 CLI (`minidev`) 同时支持 Node.js API 风格进行调用,以便于集成入不同的流程中,更加灵活便捷。
9
+
10
+ #### 示例
11
+
12
+ ````javascript
13
+
14
+ const { minidev } = require('minidev');
15
+
16
+ minidev.preview({
17
+ appId:'2021xxxxxxxxx9999', // 传入 appId
18
+
19
+ project: 'path/to/project' // 小程序项目路径
20
+ }).then(({qrcodeUrl}) => {
21
+
22
+ // qrcodeUrl为二维码图片地址, 可以进行进一步的展示
23
+ console.log(qrcodeUrl);
24
+
25
+ });
26
+
27
+ ````
28
+
29
+ ## CLI 指令与 Node.js API
30
+
31
+ 各个指令都拥有对应的 Node.js API,具体调用方式请参照[指令列表](../commands/index.md)中的对应指令文档了解。
@@ -0,0 +1,135 @@
1
+ ---
2
+ slug: quick-start
3
+ title: 快速开始
4
+ ---
5
+
6
+
7
+ # 快速开始
8
+
9
+ ## 安装
10
+
11
+ 首先安装 minidev 至您的系统中。为此,您的系统必须首先安装 node 运行环境 (前往 [node 官网](https://nodejs.org) 进行安装 ), minidev 需要 **node 版本 >= 10** 的运行环境。
12
+
13
+ 确认 node 环境之后,可以在命令行工具中执行以下指令进行安装
14
+
15
+ ````shell
16
+ npm i -g minidev
17
+ ````
18
+
19
+ > 安装过程会存在资源下载过程(调试器、模拟器类的资源),请保持网络畅通
20
+
21
+ ## 对工具进行授权
22
+
23
+ minidev 中许多指令(如真机预览 `preview`、真机调试 `remote-debug`等)都需要与支付宝服务器进行可信通信,因此在执行上述指令前,我们需要首先对工具完成授权。
24
+
25
+ 在命令行中执行以下指令来对当前电脑进行授权
26
+
27
+ ````shell
28
+ minidev login
29
+ ````
30
+
31
+ 执行后,终端界面会出现授权二维码,**在二维码过期前**使用手机支付宝钱包 app 进行扫码,即可完成授权
32
+
33
+
34
+ ## 进行本地开发
35
+
36
+ 使用命令行切换工作目录到小程序项目后,可以使用本地开发命令进行诸多开发操作
37
+
38
+ > 新建小程序项目方式,以及小程序项目的相关信息可以查阅[支付宝小程序文档站](https://opendocs.alipay.com/mini/006kyi)
39
+
40
+ ### 运行开发服务器 (DevServer)
41
+
42
+ 在命令行工具中执行以下指令来将工作目录移动到小程序项目,并启动开发服务器 Dev Server。
43
+
44
+ ````shell
45
+ cd /path/to/project
46
+ minidev dev
47
+ ````
48
+
49
+ 启动后小程序将进行构建,构建时间根据项目规模而定,一般在 3 ~ 30s 不等。
50
+
51
+ 首次编译完成后,终端中将显示如下图的信息
52
+
53
+ ![](https://intranetproxy.alipay.com/skylark/lark/0/2021/png/111910/1638340227186-d583d721-9a39-4c9e-bd3f-446b183f927e.png?x-oss-process=image%2Fresize%2Cw_1500%2Climit_0)
54
+
55
+ > 开发服务器 DevServer 会在每次改变小程序源码文件时进行重新构建
56
+
57
+ #### 启动 web 模拟器和调试器
58
+
59
+ 在上述启动开发服务器后,继续在命令行中输入 web 指令,便可以打开 web 版本的模拟器和调试器
60
+
61
+ ````shell
62
+
63
+ #- preview : 使用模拟器产物发起真机预览 (此模式仅整包, 无法验证分包可用性)
64
+ #- remote-debug : 使用模拟器产物发起真机调试 (此模式仅整包)
65
+ #- ide : 启动小程序开发者工具模拟器进行调试
66
+ #- web : 启动 Web 模拟器(本地)
67
+
68
+ # 在 devServer 启动完成后,输入 web 后回车
69
+
70
+ web
71
+
72
+ ````
73
+
74
+ 启动后的模拟器和调试器如下:
75
+
76
+ ![](https://intranetproxy.alipay.com/skylark/lark/0/2021/png/111910/1638340616562-5a131cc0-dc80-44af-9df2-1e9ba9e58d1a.png?x-oss-process=image%2Fresize%2Cw_1500%2Climit_0)
77
+
78
+
79
+ 之后便可以在这个 web 版本的模拟器和调试器中进行小程序的运行和调试。
80
+
81
+
82
+ ### 发起真机预览
83
+
84
+ 在小程序项目目录运行如下指令可以对小程序进行真机预览
85
+
86
+ ````shell
87
+ # $YourAppId 请使用你的小程序 appid 进行替换
88
+ minidev preview -a $YourAppId
89
+
90
+ # 填写 appid 后的示例
91
+ # minidev preview -a 2021123412341234
92
+ ````
93
+
94
+ > 为进行真机预览、真机调试等操作,你必须首先拥有一个 appid,小程序 appid 的创建和申请流程可以按照[支付宝相关文档](https://opendocs.alipay.com/mini/introduce/create)进行操作
95
+
96
+ 运行后,将会对小程序进行构建然后推送到支付宝小程序开放平台生成手机支付宝钱包可用的小程序,并在终端中显示预览二维码如下(示例)
97
+
98
+ ````
99
+ ✔ 生成预览码成功
100
+ 二维码图片地址 xxxxxxxx
101
+ Schema Url xxxxxxxxxx
102
+ ----------------------------------------------------------------------------------------------------
103
+ [ ]
104
+ [ ]
105
+ [ 二维码图片 ]
106
+ [ ]
107
+ [ ]
108
+
109
+
110
+ ````
111
+
112
+ 此时用手机支付宝钱包扫描二维码图片即可进行真机预览。
113
+
114
+ > 真机预览过程存在和服务器通信,请保证网络畅通
115
+
116
+ ## 上传提审小程序
117
+
118
+ 当小程序开发完毕准备[发布](https://opendocs.alipay.com/mini/introduce/release)时,
119
+
120
+ 使用如下命令可对小程序进行[上传提审](https://opendocs.alipay.com/mini/introduce/release#%E4%B8%8A%E4%BC%A0%E5%B0%8F%E7%A8%8B%E5%BA%8F)
121
+
122
+ ````
123
+ minidev upload -a $YourAppId
124
+ ````
125
+
126
+ 小程序将会在开放平台进行构建,由于生产环境的管控和稳定性要求,此构建过程可能会花费比本地开发更多的时间,请耐心等待。
127
+
128
+
129
+ ## 更多
130
+
131
+ 以上便是 minidev 的基础用法,更多使用文档和建议,可以参照更多文档:
132
+
133
+ * [CLI 使用](./cli.md)
134
+ * [JS API 使用](./node-js-api.md)
135
+ * [指令列表](../commands/index.md)
@@ -0,0 +1,103 @@
1
+ # build
2
+
3
+ ## 用途
4
+
5
+ 由小程序源码构建小程序,生成小程序运行时产物包
6
+
7
+ ## CLI 调用方法
8
+
9
+ ````shell
10
+ Usage: minidev build [options]
11
+
12
+ 构建编译小程序
13
+
14
+ Options:
15
+ --appxv <appxv> [可选] 构建类别,可选值为 v1, v2, legacy-v1 (choices: "v1", "v2", "legacy-v1")
16
+ --cacheDir <cacheDir> [可选] 指定构建缓存路径, 默认为系统缓存路径
17
+ --minify [可选] 是否需要压缩,默认不开
18
+ -o, --output <output> [可选] 产物路径
19
+ --pluginId <pluginId> [可选] 插件 Id,构建插件时将生成到代码中
20
+ --source-map [可选] 是否产出 sourceMap (default: true)
21
+ -p, --project <project> [可选] 目标项目, 默认为当前工作目录
22
+ ````
23
+ ## Node.js API 调用方法
24
+
25
+
26
+ ````javascript
27
+
28
+ const buildResult = await minidev.build({
29
+ project: 'path/to/mini-program'
30
+ })
31
+
32
+ // 输出产物目录
33
+ console.log(buildResult.dist);
34
+
35
+ ````
36
+
37
+ ## 参数说明
38
+
39
+ ### project
40
+
41
+ 指定构建的小程序项目位置,请指向[小程序项目配置文件(mini.project.json)](https://opendocs.alipay.com/mini/framework/project)所在的目录
42
+
43
+ ### appxv
44
+
45
+ ````Typescript
46
+ appx: 'v1' | 'v2' | 'legacy-v1'
47
+ ````
48
+
49
+ 强制指定使用的[基础库](https://opendocs.alipay.com/mini/framework/lib)构建模式, 如果不指定会根据[小程序项目配置文件(mini.project.json)](https://opendocs.alipay.com/mini/framework/project)中的相关字段来自动判断
50
+
51
+ 可选值
52
+
53
+ * `v1`: 构建使用小程序基础库 1.x 进行运行的小程序
54
+ * `v2`: 构建使用小程序基础库 2.x 进行运行的小程序
55
+ * `legacy-v1`: 使用旧构建器构建小程序基础库 1.x(不推荐)
56
+
57
+ ### cacheDir
58
+
59
+ ````Typescript
60
+ cacheDir: string
61
+ ````
62
+
63
+ 指定构建缓存路径, 默认为系统缓存路径
64
+
65
+ 默认缓存路径位于:
66
+
67
+ * `MacOS/Linux` $TMPDIR/minicode_compile_dy/.cache
68
+ * `Windows`: C:\\User\\你的用户名\\AppData\\Local\\Temp\\minicode_compile_dy/.cache
69
+
70
+ ### minify
71
+
72
+ ````Typescript
73
+ minify: boolean
74
+ ````
75
+
76
+ 是否需要压缩产物,默认不会对产物进行压缩(压缩会耗费额外的时间)
77
+
78
+ ### output
79
+
80
+ ````Typescript
81
+ output: string
82
+ ````
83
+
84
+ 产物包的输出路径
85
+
86
+ 如果不提供输出路径,默认会在以下文件夹创建随机名称的文件夹作为产物路径:
87
+
88
+ * `MacOS/Linux` $TMPDIR/minicode_compile_dy
89
+ * `Windows`: C:\\User\\你的用户名\\AppData\\Local\\Temp\\minicode_compile_dy
90
+
91
+
92
+ ### sourceMap
93
+
94
+ ````Typescript
95
+ sourceMap: boolean
96
+ ````
97
+
98
+ 是否对构建产物生成源代码映射,默认开启。
99
+
100
+ 关闭源码映射会加快构建速度,但会影响运行时的调试和错误收集能力。
101
+
102
+
103
+
@@ -0,0 +1,79 @@
1
+ # config
2
+
3
+ ## 用途
4
+
5
+ 用于设置和展示当前的配置信息, 拥有两个基础指令
6
+
7
+ - `set` 设置配置值
8
+ - `get` 获取配置值
9
+
10
+ ## CLI 风格使用
11
+
12
+ ````shell
13
+ Usage: minidev config set [options] <configName> <value>
14
+
15
+ 设置配置
16
+
17
+ Arguments:
18
+ configName 设置名称
19
+ value 设置值
20
+
21
+ Options:
22
+ --scope [可选] 设置范围, global 为全局设置, project 为项目设置 (choices: "global", "project")
23
+ -p, --project <project> [可选] 目标项目, 默认为当前工作目录
24
+ ````
25
+
26
+ ````shell
27
+ Usage: minidev config get [options] <configName>
28
+
29
+ 显示配置项
30
+
31
+ Arguments:
32
+ configName 设置名称
33
+
34
+ Options:
35
+ --scope [可选] 设置范围, global 为全局设置, project 为项目设置 (choices: "global", "project")
36
+ -p, --project <project> [可选] 目标项目, 默认为当前工作目录
37
+ ````
38
+
39
+ ## Node.js API 风格使用
40
+
41
+ ````javascript
42
+
43
+ import { minidev, ConfigScope } from 'minidev'
44
+
45
+ // 例: 获取当前小程序编译器版本
46
+ const configValue = await minidev.config.get('compiler.version');
47
+
48
+ // 例: 设置指定项目下的使用的 ide 路径
49
+ await minidev.config.set('ide.appPath', 'path/to/idePath', {
50
+ scope: ConfigScope.PROJECT,
51
+ project: '/path/to/project',
52
+ });
53
+
54
+ // JS API 下可以使用 useRuntime 方法指定 runtime 配置
55
+ // 例: 注入运行时授权信息
56
+ await minidev.config.useRuntime({
57
+ 'alipay.authentication.privateKey': 'xxxxxxxxxx',
58
+ 'alipay.authentication.toolId': 'xxxxxxxxxx',
59
+ })
60
+
61
+ ````
62
+
63
+ ## 参数说明
64
+
65
+ ### scope
66
+
67
+ 设置范围, 支持值 global, project。详见 [minidev配置](../../guide/experiences/config.md)
68
+
69
+ - `global` 全局设置
70
+ - `project` 项目配置
71
+
72
+ ### project
73
+
74
+ 目标项目,默认为当前工作目录。当 set 或者 get 的 scope 为 project 或 空时生效
75
+
76
+ ### 注意事项
77
+
78
+ - 当使用 set 时,如果不传入 scope, 则默认 scope 为 `global`, 即更改的是全局配置
79
+ - 当使用 get 时,如果不传入 scope, 则默认 scope 为 `runtime`, 即获取的是最终生效的配置
@@ -0,0 +1,70 @@
1
+ ---
2
+ slug: dev-ide
3
+ ---
4
+ # ide
5
+
6
+ ## 用途
7
+
8
+ 启动开发服务器 Dev Server 之后,使用 IDE 对小程序进行模拟器调试、真机预览等操作
9
+
10
+ ## CLI 风格使用
11
+
12
+ ````shell
13
+ # minidev dev 运行之后
14
+ # 界面会显示
15
+
16
+ # 可以继续执行以下命令 (可以通过 指令名 -h 来查看参数)
17
+
18
+ # - preview : 使用模拟器产物发起真机预览 (此模式仅整包, 无法验证分包可用性)
19
+ # - remote-debug : 使用模拟器产物发起真机调试 (此模式仅整包)
20
+ # - ide : 启动小程序开发者工具模拟器进行调试
21
+ # - web : 启动 Web 模拟器(本地)
22
+
23
+ # 此时输入
24
+
25
+ ide
26
+
27
+ ````
28
+
29
+ 可以添加的参数
30
+
31
+ ````
32
+ Options:
33
+ --app-path [可选] IDE 安装路径
34
+ 示例:MacOS: /Applications/小程序开发者工具.app
35
+ Windows: C:\Program Files\小程序开发者工具
36
+ --lite [可选] 使用 Lite 模式启动 IDE
37
+ --project-type [可选] 项目类型
38
+
39
+ ````
40
+
41
+ ## Node.js API 风格使用
42
+
43
+ ````javascript
44
+
45
+ // 调用前必须先有 devServer
46
+ // const devServerBuild = await minidev.dev({project: 'path/to/project'});
47
+
48
+ devServerBuild.devServer.once('done', () => {
49
+ // devServer 构建完成后启动 ide
50
+ minidev.startIdeForDevServer({
51
+ lite: true
52
+ }, devServerBuild);
53
+ });
54
+
55
+ ````
56
+
57
+ ## 参数说明
58
+
59
+
60
+ ### appPath
61
+
62
+ IDE 的安装路径,详见 [IDE指令](../../../guide/commands/ide.md) 同名参数
63
+
64
+ ### projectType
65
+
66
+ IDE 打开时指定的项目类型,详见 [IDE指令](../../../guide/commands/ide.md) 同名参数
67
+
68
+ ### lite
69
+
70
+ 是否使用 [Lite 模式](https://opendocs.alipay.com/mini/ide/idelite) 启动 IDE,此场景下默认为 true
@@ -0,0 +1,54 @@
1
+ ---
2
+ slug: dev-preview
3
+ ---
4
+ # preview
5
+
6
+ ## 用途
7
+
8
+ 启动开发服务器 Dev Server 之后,基于模拟器的产物进行快速真机预览
9
+
10
+ 此过程由于基于了模拟器的产物, 因此无需进行重新构建,从而有更快的预览速度。
11
+
12
+ > 快速真机预览只会开启整包,无法验证分包功能的可用性。如需要运行分包真机预览,请使用 [preview 指令](../../../guide/commands/preview.md);
13
+
14
+ > 使用该指令要求工具进行[授权](../../../guide/experiences/auth.md)
15
+
16
+ ## CLI 风格使用
17
+
18
+ ````shell
19
+ # minidev dev 运行之后
20
+ # 界面会显示
21
+
22
+ # 可以继续执行以下命令 (可以通过 指令名 -h 来查看参数)
23
+
24
+ # - preview : 使用模拟器产物发起真机预览 (此模式仅整包, 无法验证分包可用性)
25
+ # - remote-debug : 使用模拟器产物发起真机调试 (此模式仅整包)
26
+ # - ide : 启动小程序开发者工具模拟器进行调试
27
+ # - web : 启动 Web 模拟器(本地)
28
+
29
+ # 此时输入
30
+
31
+ preview
32
+
33
+ ````
34
+
35
+ ## Node.js API 风格使用
36
+
37
+ ````javascript
38
+
39
+ // 调用前必须先有 devServer
40
+ // const devServerBuild = await minidev.dev({project: 'path/to/project'});
41
+
42
+ devServerBuild.devServer.once('done', () => {
43
+ // devServer 构建完成后发起真机预览
44
+ minidev.devPreview({
45
+ appId: 'YourAppId'
46
+ }, devServerBuild);
47
+ });
48
+
49
+ ````
50
+
51
+
52
+ ## 参数说明
53
+
54
+ 参见 [preview 指令](../../../guide/commands/preview.md);
@@ -0,0 +1,63 @@
1
+ ---
2
+ slug: dev-debug
3
+ ---
4
+ # remote-debug
5
+ ## 用途
6
+
7
+ 启动开发服务器 Dev Server 之后,基于模拟器的产物进行快速真机调试
8
+
9
+ 此过程由于基于了模拟器的产物, 因此无需进行重新构建,从而有更快的速度。
10
+
11
+ > 快速真机调试只会开启整包,无法验证分包功能的可用性。如需要运行分包真机调试,请使用 [remote-debug 指令](../../../guide/commands/remote-debug.md);
12
+
13
+ > 使用该指令要求工具进行[授权](../../../guide/experiences/auth.md)
14
+
15
+ ## CLI 风格使用
16
+
17
+ ````shell
18
+ # minidev dev 运行之后
19
+ # 界面会显示
20
+
21
+ # 可以继续执行以下命令 (可以通过 指令名 -h 来查看参数)
22
+
23
+ # - preview : 使用模拟器产物发起真机预览 (此模式仅整包, 无法验证分包可用性)
24
+ # - remote-debug : 使用模拟器产物发起真机调试 (此模式仅整包)
25
+ # - ide : 启动小程序开发者工具模拟器进行调试
26
+ # - web : 启动 Web 模拟器(本地)
27
+
28
+ # 此时输入
29
+
30
+ remote
31
+
32
+ ````
33
+
34
+ ## Node.js API 风格使用
35
+
36
+ ````javascript
37
+
38
+ // 调用前必须先有 devServer
39
+ // const devServerBuild = await minidev.dev({project: 'path/to/project'});
40
+
41
+ devServerBuild.devServer.once('done', async () => {
42
+
43
+ // devServer 构建完成后发起真机调试
44
+ const {
45
+ qrcodeSchema,
46
+ qrcodeUrl,
47
+ debugUrl
48
+ } = await minidev.devRemoteDebug({
49
+ appId: 'YourAppId'
50
+ }, devServerBuild);
51
+
52
+ console.log(qrcodeUrl);
53
+
54
+ console.log(debugUrl );
55
+
56
+ });
57
+
58
+ ````
59
+
60
+
61
+ ## 参数说明
62
+
63
+ 参见 [remote-debug 指令](../../../guide/commands/remote-debug.md);