我希望能够多次在Firebase规则中重复使用表达式。
如果我有以下规则:
{
"rules": {
".read": true,
".write": false,
"secretArea1": {
".read": "root.child('users').child(auth.uid).child('role').val() === 'admin'",
".write": "root.child('users').child(auth.uid).child('role').val() === 'admin'"
},
"secretArea2": {
".read": "root.child('users').child(auth.uid).child('role').val() === 'admin'",
".write": "root.child('users').child(auth.uid).child('role').val() === 'admin'"
}
}
}
有没有办法在某个地方存储root.child('users').child(auth.uid).child('role').val() === 'admin'
,所以不必重复4次?
类似的东西:
{
"rules": {
".read": true,
".write": false,
"secretArea1": {
".read": "isAdmin",
".write": "isAdmin"
},
"secretArea2": {
".read": "isAdmin",
".write": "isAdmin"
}
}
}
也许我正以错误的方式接近这一点。任何建议都会很棒!
答案 0 :(得分:1)
我刚发现在Blaze Compiler链接的Security & Rules Libraries。不完全是我想要的,并添加了额外的编译步骤,但似乎提供了我正在寻找的功能。如果将它作为选项包含在Firebase仪表板中,那就太棒了。