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.
- package/assets/web-sim/devtool/index.html +18 -0
- package/assets/web-sim/devtool/main.js +2 -0
- package/assets/web-sim/devtool/main.js.LICENSE.txt +47 -0
- package/assets/web-sim/index.html +17 -0
- package/assets/web-sim/main.js +2 -0
- package/assets/web-sim/main.js.LICENSE.txt +82 -0
- package/assets/web-sim/simulator/index.html +18 -0
- package/assets/web-sim/simulator/main.js +2 -0
- package/assets/web-sim/simulator/main.js.LICENSE.txt +67 -0
- package/docs/guide/base/cli.md +37 -0
- package/docs/guide/base/node-js-api.md +31 -0
- package/docs/guide/base/quick-start.md +135 -0
- package/docs/guide/commands/build.md +103 -0
- package/docs/guide/commands/config.md +79 -0
- package/docs/guide/commands/dev-daemon-commands/ide.md +70 -0
- package/docs/guide/commands/dev-daemon-commands/preview.md +54 -0
- package/docs/guide/commands/dev-daemon-commands/remote-debug.md +63 -0
- package/docs/guide/commands/dev-daemon-commands/web.md +110 -0
- package/docs/guide/commands/dev.md +150 -0
- package/docs/guide/commands/download-assets.md +48 -0
- package/docs/guide/commands/ide.md +117 -0
- package/docs/guide/commands/index.md +19 -0
- package/docs/guide/commands/login.md +53 -0
- package/docs/guide/commands/preview.md +121 -0
- package/docs/guide/commands/remote-debug.md +137 -0
- package/docs/guide/commands/upload.md +95 -0
- package/docs/guide/experiences/auth.md +65 -0
- package/docs/guide/experiences/client-type.md +16 -0
- package/docs/guide/experiences/config.md +127 -0
- package/docs/guide/experiences/sandbox.md +12 -0
- package/docs/guide/experiences/scene.md +33 -0
- package/index.d.ts +65 -7
- package/lib/index.js +1 -1
- package/lib/index.js.LICENSE.txt +195 -0
- package/lib/worker.js +2 -0
- package/lib/worker.js.LICENSE.txt +14 -0
- 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
|
+

|
|
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
|
+

|
|
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);
|