提交 f80f4a6b 编写于 作者: 雪洛's avatar 雪洛

docs: update uniCloud run and debug

上级 39690186
......@@ -136,31 +136,32 @@ HBuilderX 2.8.1+ 支持uniCloud本地运行插件。
本地运行环境与uniCloud现网的差别:
1. 本地环境只有node运行环境
### 本地环境只有node运行环境
也就是云函数、DB Schema可以使用本地,但本地没有MongoDB、没有redis、没有云存储,数据内容仍然存放在uniCloud现网服务空间。数据库索引也在云端才生效。
2. node版本差异
### node版本差异
本地运行的nodejs版本为node12。
服务空间的nodejs版本可以选择8或12,如果你使用了nodejs的api,在本地测试之后部署到云端建议测试一下兼容性。如果只使用uniCloud的api,无需顾虑兼容性。
3. 本地环境的云函数没有超时限制
### 本地环境的云函数没有超时限制
云函数超时时间、运行内存配置,在本地调试时不会生效。
4. return 策略差异
### return 策略差异
[详见](cf-functions.md?id=return)
5. 公用模块使用注意
### 公用模块使用注意
- `HBuilderX 3.0.0`之前需要在云函数内执行`npm install ../common/xxx`安装公共模块,详细请参考[云函数公用模块](uniCloud/cf-common.md)
- 如果使用`HBuilderX 3.0.0`及以上版本,可以直接在云函数目录右键选择“管理公共模块依赖”进行公共模块的引入
- 如果使用到加密的公共模块则此云函数不可本地运行
- `HBuilderX 3.0.0`版本运行uniCloud项目时,uniCloud本地调试插件会自动进行云函数依赖安装(包括公共模块和package.json里面的其他依赖)
6. 时区问题
### 时区问题@timezone
uniCloud云端的云函数使用的时区是utc+0,本地运行时使用的是本机时间,中国一般是+8。在使用“时间戳”时两者没有差异,但如果要获取年、月、日、小时要注意时区的差异。
......@@ -182,29 +183,30 @@ const hour = getOffsetDate(8).getHours()
推荐使用`<uni-dateformat>`组件格式化显示日期,[详情](https://ext.dcloud.net.cn/plugin?id=3279)
7. 调用其他云函数
### 云函数内调用其他云函数
“本地运行云函数”时云函数内callFunction会调用云端已部署的云函数
HBuilderX 3.4.0之前的版本“本地运行云函数”时云函数内callFunction会调用云端已部署的云函数,HBuilderX 3.4.0及之后的版本会调用本地云函数
“客户端连接本地云函数时”云函数内callFunction会调用本地云函数
8. 数据与存储
### 数据与存储
请务必注意云函数在本地运行时依然是连接的云端数据库与存储
云函数上传文件到云存储只有腾讯云支持。当然也可以在前端直接上传文件,此时阿里云腾讯云均支持。
9. 插件市场加密插件
### 插件市场加密插件
插件市场销售的加密云函数或公共模块,在未购买获得源码前,无法在本地运行。本地运行时会自动请求云端已部署的云函数。请留意控制台输出。
发送clientDB请求时,如果使用了加密的action(在插件市场销售),当前请求会使用云端已部署资源而不是本地资源(包括schema、validateFunction、action),请留意控制台输出。
10. 文件系统
### 文件系统
云函数在云端运行于一个只读文件系统内(仅`/tmp`目录可以写入文件),本地运行时没有这些限制。如需在云端运行时写入文件请在/tmp目录下操作
11. 其他注意事项
### 其他注意事项
- 虽然云函数、数据库schema、validatefunction在本地,但云存储、数据库的数据和索引,仍然在云端。也就是开发机不能完全脱线开发。只是代码可以在本地写,免上传就能联调。
- 连接线上环境时请记得上传本地的schema、validatefunction、action
- 切换云端、本地,无需重新运行客户端
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册