创建/更新/删除Firebase实时数据库规则
我已经创建了一个创建/更新/删除用户聊天信息的工作方法。我想知道是否有办法简化我的逻辑创建/更新/删除Firebase实时数据库规则,firebase,firebase-realtime-database,Firebase,Firebase Realtime Database,我已经创建了一个创建/更新/删除用户聊天信息的工作方法。我想知道是否有办法简化我的逻辑 ".write": "(!data.exists() && newData.child('uid').val() == auth.uid) || (data.child('uid').val() == auth.uid && newData.child('uid').val() == auth.uid) || (data.child('uid').val() == auth.u
".write": "(!data.exists() && newData.child('uid').val() == auth.uid) || (data.child('uid').val() == auth.uid && newData.child('uid').val() == auth.uid) || (data.child('uid').val() == auth.uid && !newData.exists())"
多行可读性
(!data.exists() && newData.child('uid').val() == auth.uid) ||
(data.child('uid').val() == auth.uid && newData.child('uid').val() == auth.uid) ||
(data.child('uid').val() == auth.uid && !newData.exists())
看看博尔特
您可以简化查询,然后编译输出
path /somePath {
path /{uid} {
read() { isUser(uid) }
write() { isUser(uid) }
}
}
function isUser(uid) {
return auth != null && auth.uid == uid;
}
它真的很方便——尽管仍处于测试阶段,但它使规则更容易阅读和理解