注:この質問は、問題をうまく解決するのに役立つと確信しているので、lodashの下に提出しましたが、今は指を置いていません
さまざまなユーザーの役割とその権限を記述するオブジェクトがあります。
「このように」定義された10〜15のロールのようなものがあります(これはアプリケーションコードを反映していませんが、問題自体を反映しています):
var role1 = {
views: {
v1: {access: true},
v2: {access: false},
v#: {access: false}
}
}
var role2 = {
views: {
v1: {access: false},
v2: {access: true},
v3: {access: true},
}
}
接続されたユーザーには複数の役割があります。その例では である可能性があり、これから、すべてのユーザー ロールで定義されたすべての props の組み合わせとなる['role1', 'role2']
単一のオブジェクトを構築する必要があります。permissions
これは基本的にホワイトリスト ベースであり、すべての「true」プロパティが false として定義されたものをオーバーライドする必要があります。したがって、期待される結果は次のようになります。
permissions = {
views: {
v1: {access: true},
v2: {access: true},
v2: {access: true}
}
}
クレイジーなネストされたループに頼らずにそれに取り組む方法がよくわかりません
JSBin の開始点は次のとおりです: http://jsbin.com/usaQejOJ/1/edit?js,console
ご協力いただきありがとうございます!