From a901308b881a640dcbf467743a2703a72ed87ca1 Mon Sep 17 00:00:00 2001 From: wanganxp Date: Tue, 20 Oct 2020 09:33:03 +0800 Subject: [PATCH] Update uni-clientDB.md --- docs/uniCloud/uni-clientDB.md | 84 +++++++++++++++++------------------ 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/docs/uniCloud/uni-clientDB.md b/docs/uniCloud/uni-clientDB.md index f6bc1f2ba7..891314ad6a 100644 --- a/docs/uniCloud/uni-clientDB.md +++ b/docs/uniCloud/uni-clientDB.md @@ -139,35 +139,35 @@ clientDB目前内置了3个变量可以供客户端使用,客户端并非直 |db.env.clientIP|当前客户端IP | 使用这些变量,将可以避免过去在服务端代码中写代码获取用户uid、时间和客户端ip的麻烦。 - -### 查询条件扩展@jsquery - -自uni-clientDB 2.0.5版本起,支持使用类js语法进行查询条件的编写。具体看以下示例 - -```js + +### 查询条件扩展@jsquery + +自uni-clientDB 2.0.5版本起,支持使用类js语法进行查询条件的编写。具体看以下示例 + +```js import db from '@/js_sdk/uni-clientDB/index.js' const dbCmd = db.command // 上面的示例中的where条件可以使用以下写法 db.collection('list') - .where('name == "hello-uni-app"') + .where('name == "hello-uni-app"') .get() .then((res)=>{ // res 为数据库查询结果 }).catch((err)=>{ - }) -``` - -**条件内可以使用的变量** - -|变量名 |说明 | -|:-: |:-: | -|auth.uid |用户id | -|auth.role |用户角色数组,参考[uni-id 角色权限](/uniCloud/uni-id?id=rbac),注意`admin`为clientDB内置的角色,如果用户角色列表里包含`admin`则认为此用户有完全数据访问权限| -|auth.permission|用户权限数组,参考[uni-id 角色权限](/uniCloud/uni-id?id=rbac) | -|now |当前时间戳(单位:毫秒),时间戳可以进行额外运算,如publish\_date > now - 60000表示publish\_date在最近一分钟 | - + }) +``` + +**条件内可以使用的变量** + +|变量名 |说明 | +|:-: |:-: | +|auth.uid |用户id | +|auth.role |用户角色数组,参考[uni-id 角色权限](/uniCloud/uni-id?id=rbac),注意`admin`为clientDB内置的角色,如果用户角色列表里包含`admin`则认为此用户有完全数据访问权限| +|auth.permission|用户权限数组,参考[uni-id 角色权限](/uniCloud/uni-id?id=rbac) | +|now |当前时间戳(单位:毫秒),时间戳可以进行额外运算,如publish\_date > now - 60000表示publish\_date在最近一分钟 | + **条件语句内可以使用的运算符** @@ -182,32 +182,32 @@ db.collection('list') |in |存在在数组中 |status in ['a','b'] |查询条件的 status 是['a','b']中的一个,左侧为数据库字段 | |! |非 |!(status in ['a','b']) |查询条件的 status 不是['a','b']中的任何一个 | |&& |与 |uid == auth.uid && age > 10 |查询记录uid属性 为 当前用户uid 并且查询条件的 age 属性大于 10| -||| |或 |uid == auth.uid||age>10|查询记录uid属性 为 当前用户uid 或者查询条件的 age 属性大于 10| -|test |正则校验 |/abc/.test(content) |查询 content 内包含abc的记录 | - - -### 刷新token - -透传uni-id自动刷新的token给客户端 - -**用法** - +||| |或 |uid == auth.uid||age>10|查询记录uid属性 为 当前用户uid 或者查询条件的 age 属性大于 10| +|test |正则校验 |/abc/.test(content) |查询 content 内包含abc的记录 。可用于替代sql中的like。还可以写更多正则实现更复杂的功能 | + + +### 刷新token + +透传uni-id自动刷新的token给客户端 + +**用法** + ```js // 引入公共模块 import db from '@/js_sdk/uni-clientDB/index.js' - -function refreshToken({ - token, - tokenExpired -}) { - uni.setStorageSync('uni_id_token', token) - uni.setStorageSync('uni_id_token_expired', tokenExpired) -} -// 绑定刷新token事件 -db.auth.on('refreshToken', refreshToken) -// 解绑刷新token事件 -db.auth.off('refreshToken', refreshToken) -``` + +function refreshToken({ + token, + tokenExpired +}) { + uni.setStorageSync('uni_id_token', token) + uni.setStorageSync('uni_id_token_expired', tokenExpired) +} +// 绑定刷新token事件 +db.auth.on('refreshToken', refreshToken) +// 解绑刷新token事件 +db.auth.off('refreshToken', refreshToken) +``` ## 云端部分 -- GitLab