Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
506545c5
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3341
Star
107
Fork
853
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
103
列表
看板
标记
里程碑
合并请求
85
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
103
Issue
103
列表
看板
标记
里程碑
合并请求
85
合并请求
85
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
506545c5
编写于
7月 15, 2022
作者:
hbcui1984
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
https://github.com/dcloudio/unidocs-zh
上级
0b802297
db37cdf7
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
107 addition
and
1 deletion
+107
-1
docs/component/input.md
docs/component/input.md
+0
-1
docs/uniCloud/cloud-obj.md
docs/uniCloud/cloud-obj.md
+76
-0
docs/uniCloud/jql.md
docs/uniCloud/jql.md
+31
-0
未找到文件。
docs/component/input.md
浏览文件 @
506545c5
...
...
@@ -37,7 +37,6 @@
|random-number|Boolean|false|当 type 为 number, digit, idcard 数字键盘是否随机排列|支付宝小程序 1.9.0+|
|controlled|Boolean|false|是否为受控组件。为 true 时,value 内容会完全受 setData 控制|支付宝小程序 1.9.0+|
|always-system|Boolean|false|是否强制使用系统键盘和 Web-view 创建的 input 元素。为 true 时,confirm-type、confirm-hold 可能失效|支付宝小程序 2.7.3+|
|@input|EventHandle||当键盘输入时,触发input事件,event.detail = {value}|差异见下方 Tips|
|@focus|EventHandle||输入框聚焦时触发,event.detail = { value, height },height 为键盘高度|仅微信小程序、京东小程序、App(2.2.3+) 、QQ小程序支持 height|
|@blur|EventHandle||输入框失去焦点时触发,event.detail = {value: value}|快手小程序不支持|
...
...
docs/uniCloud/cloud-obj.md
浏览文件 @
506545c5
...
...
@@ -384,6 +384,28 @@ module.exports = {
}
```
### 获取url化时的http信息@get-http-info
> 新增于HBuilderX 3.5.2
仅可在云对象url化时使用,如何使用云对象的url化请参考:
[
云对象url化
](
#http-trigger
)
**接口形式**
`this.getHttpInfo()`
**示例**
```
js
module
.
exports
=
{
_before
:
function
()
{
// _before的用法请看后续章节
const
params
=
this
.
getHttpInfo
()
// 返回值和云函数url化时的event一致
}
}
```
相关文档:
[
云函数url化的入参
](
uniCloud/cf-function.md?id=input
)
## 预处理与后处理@before-and-after
### 预处理 _before@before
...
...
@@ -544,6 +566,59 @@ const todo = uniCloud.importObject('todo')
const
res
=
await
todo
.
add
(
'
title demo
'
,
'
content demo
'
)
```
### 定时触发@timing-trigger
> 新增于HBuilderX 3.5.2
配置方式和云函数一致,相关文档:
[
定时触发器
](
uniCloud/trigger.md
)
配置完成后会触发云对象导出的
`_timing`
方法
云对象代码示例:
```
js
module
.
exports
=
{
_timing
:
function
()
{
console
.
log
(
'
triggered by timing
'
)
}
}
```
**注意**
-
定时触发云对象时,
`_before`
和
`_after`
均不执行
### url化@http-trigger
> 新增于HBuilderX 3.5.2
配置方式和云函数一致,相关文档:
[
url化
](
uniCloud/http.md
)
在url化的文档里面有关于云函数url化时,event.path的说明
>url化场景下,event.path表示以配置的url化路径为根路径的访问路径。以配置`/test`为云函数url化路径,访问`/test/a/b/c`时event.path为`/a/b/c`
调用url化的云对象时,event.path对应的部分必须是云对象导出的方法名。例如:云对象配置的触发路径是
`/todo`
,调用
`/todo/addTodo`
即会触发云对象的addTodo方法。方法区分大小写且不可含
`/`
。
url内query部分会被转换成云对象方法的入参。以下面的todo云对象为例
```
js
module
.
exports
=
{
addTodo
:
function
(
params
)
{
console
.
log
(
params
)
}
}
```
如果通过
`https://xxx.com/todo/addTodo?title=todo-title&content=todo-content`
调用云对象,怎todo方法内的console.log会输出以下内容
`{title: 'todo title', content: 'todo content'}`
需要注意的是自url内解析出的参数均为字符串类型。
**注意**
-
url化方式调用云对象时,
`_before`
和
`_after`
均正常执行
-
如果需要获取其他方式传入云对象的参数(如:post一个json内容到云对象),请使用
[
this.getHttpInfo
](
#get-http-info
)
获取
### 跨服务空间调用云对象@call-by-cloud-cross-space
云端或者客户端均有uniCloud.init方法可以获取其他服务空间的uniCloud实例,使用此实例的importObject可以调用其他服务空间的云对象,参考:
[](
uniCloud/concepts/space.md?id=multi-space
)
...
...
@@ -676,6 +751,7 @@ method1(param1) {
-
云对象和云函数都在cloudfunctions目录下,但是不同于云函数,云对象的入口为
`index.obj.js`
,而云函数则是
`index.js`
。
**为正确区分两者uniCloud做出了限制,云函数内不可存在index.obj.js,云对象内也不可存在index.js。**
-
所有
`_`
开头的方法都是私有方法,客户端不可访问
-
云对象也可以引用公共模块或者npm上的包,引用方式和云函数一致。
-
云对象的导出的方法不可以是箭头函数,导出箭头函数会导致
`this`
指向不正确
## 复杂示例
...
...
docs/uniCloud/jql.md
浏览文件 @
506545c5
...
...
@@ -3347,6 +3347,37 @@ module.exports = {
如果所在服务空间开通了redis,action内可直接使用redis扩展。目前只能云端运行,后续会支持本地运行时在action内使用redis扩展
**注意**
-
action上传后可能需要一段时间才会在云端生效,通常是3分钟左右
## 缓存JQL结果到Redis内@redis-cache
> 新增于HBuilderX 3.5.2
用于缓存业务中不常改动或不需要及时更新的数据,如新闻热点等。详细用法如下
1.
在插件市场导入
`uni-config-center`
插件,插件地址:
[
uni-config-center
](
https://ext.dcloud.net.cn/plugin?id=4425
)
2.
在
`uniCloud/cloudfunction/common/uni-config-center`
下创建
`uni-jql-cache-redis.json`
文件(注意此文件是标准json格式,不支持注释)
整个
`uni-jql-cache-redis.json`
文件是一个数组,其中每一项是一个缓存配置。示例内容如下
```
js
[{
"
id
"
:
"
test-get
"
,
// 缓存id
"
jql
"
:
"
db.collection('test').limit(10).get()
"
,
// 要缓存的数据库指令
"
expiresIn
"
:
3600
// 缓存有效期
}]
```
**注意**
-
注意id为缓存唯一id,不可与其他项重复
-
jql会将缓存配置对应的查询结果缓存到key为
`unicloud:jql-cache:${id}:string`
redis缓存内
-
目前不可缓存使用了
`db.getCloudEnv()`
或
`$cloudEnv_`
开头的云端环境变量的查询
-
不可缓存使用了action的查询
-
不配置expiresIn时数据将会持久保存在redis内
## 数据库运算方法列表@aggregate-operator
uniCloud的云数据库,提供了一批强大的运算方法。这些方法是数据库执行的,而不是云函数执行的。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录