未验证 提交 a901308b 编写于 作者: W wanganxp 提交者: GitHub

Update uni-clientDB.md

上级 fa607dc2
...@@ -139,35 +139,35 @@ clientDB目前内置了3个变量可以供客户端使用,客户端并非直 ...@@ -139,35 +139,35 @@ clientDB目前内置了3个变量可以供客户端使用,客户端并非直
|db.env.clientIP|当前客户端IP | |db.env.clientIP|当前客户端IP |
使用这些变量,将可以避免过去在服务端代码中写代码获取用户uid、时间和客户端ip的麻烦。 使用这些变量,将可以避免过去在服务端代码中写代码获取用户uid、时间和客户端ip的麻烦。
### 查询条件扩展@jsquery ### 查询条件扩展@jsquery
自uni-clientDB 2.0.5版本起,支持使用类js语法进行查询条件的编写。具体看以下示例 自uni-clientDB 2.0.5版本起,支持使用类js语法进行查询条件的编写。具体看以下示例
```js ```js
import db from '@/js_sdk/uni-clientDB/index.js' import db from '@/js_sdk/uni-clientDB/index.js'
const dbCmd = db.command const dbCmd = db.command
// 上面的示例中的where条件可以使用以下写法 // 上面的示例中的where条件可以使用以下写法
db.collection('list') db.collection('list')
.where('name == "hello-uni-app"') .where('name == "hello-uni-app"')
.get() .get()
.then((res)=>{ .then((res)=>{
// res 为数据库查询结果 // res 为数据库查询结果
}).catch((err)=>{ }).catch((err)=>{
}) })
``` ```
**条件内可以使用的变量** **条件内可以使用的变量**
|变量名 |说明 | |变量名 |说明 |
|:-: |:-: | |:-: |:-: |
|auth.uid |用户id | |auth.uid |用户id |
|auth.role |用户角色数组,参考[uni-id 角色权限](/uniCloud/uni-id?id=rbac),注意`admin`为clientDB内置的角色,如果用户角色列表里包含`admin`则认为此用户有完全数据访问权限| |auth.role |用户角色数组,参考[uni-id 角色权限](/uniCloud/uni-id?id=rbac),注意`admin`为clientDB内置的角色,如果用户角色列表里包含`admin`则认为此用户有完全数据访问权限|
|auth.permission|用户权限数组,参考[uni-id 角色权限](/uniCloud/uni-id?id=rbac) | |auth.permission|用户权限数组,参考[uni-id 角色权限](/uniCloud/uni-id?id=rbac) |
|now |当前时间戳(单位:毫秒),时间戳可以进行额外运算,如publish\_date > now - 60000表示publish\_date在最近一分钟 | |now |当前时间戳(单位:毫秒),时间戳可以进行额外运算,如publish\_date > now - 60000表示publish\_date在最近一分钟 |
**条件语句内可以使用的运算符** **条件语句内可以使用的运算符**
...@@ -182,32 +182,32 @@ db.collection('list') ...@@ -182,32 +182,32 @@ db.collection('list')
|in |存在在数组中 |status in ['a','b'] |查询条件的 status 是['a','b']中的一个,左侧为数据库字段 | |in |存在在数组中 |status in ['a','b'] |查询条件的 status 是['a','b']中的一个,左侧为数据库字段 |
|! |非 |!(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|
||| |或 |uid == auth.uid||age>10|查询记录uid属性 为 当前用户uid 或者查询条件的 age 属性大于 10| ||| |或 |uid == auth.uid||age>10|查询记录uid属性 为 当前用户uid 或者查询条件的 age 属性大于 10|
|test |正则校验 |/abc/.test(content) |查询 content 内包含abc的记录 | |test |正则校验 |/abc/.test(content) |查询 content 内包含abc的记录 。可用于替代sql中的like。还可以写更多正则实现更复杂的功能 |
### 刷新token ### 刷新token
透传uni-id自动刷新的token给客户端 透传uni-id自动刷新的token给客户端
**用法** **用法**
```js ```js
// 引入公共模块 // 引入公共模块
import db from '@/js_sdk/uni-clientDB/index.js' import db from '@/js_sdk/uni-clientDB/index.js'
function refreshToken({ function refreshToken({
token, token,
tokenExpired tokenExpired
}) { }) {
uni.setStorageSync('uni_id_token', token) uni.setStorageSync('uni_id_token', token)
uni.setStorageSync('uni_id_token_expired', tokenExpired) uni.setStorageSync('uni_id_token_expired', tokenExpired)
} }
// 绑定刷新token事件 // 绑定刷新token事件
db.auth.on('refreshToken', refreshToken) db.auth.on('refreshToken', refreshToken)
// 解绑刷新token事件 // 解绑刷新token事件
db.auth.off('refreshToken', refreshToken) db.auth.off('refreshToken', refreshToken)
``` ```
## 云端部分 ## 云端部分
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册