Ich habe ein Angular-Projekt, aber das ist nicht direkt mit Angular verwandt und ich brauche nur die Logik des dynamischen Menüs mit Baum erstellen, die auch ähnlich wie in ASP.NET MVC-Projekt sein kann. Also, Ihr Vorschlag für ASP.NET MVC, etc. wird auch hilfreich für mich sein.So erstellen Sie dynamische Menü mit Baum
Ich benutze PrimeNG Tree und will Menü aus einer Tabelle in MSSQL-Datenbank erhalten:
Menü Tabelle (die Daten wurden zum Beispiel Nutzung geändert):
Id | Order | ParentId | Name |
1 1 0 Documents
2 1 1 Work
3 1 2 Expenses.doc
4 2 2 Resume.doc
5 2 1 Home
6 1 5 Invoices.txt
...
Um Um die Menüeinträge aufzufüllen, muss ich eine JSON-Zeichenfolge wie folgt generieren:
{
"data":
[
{
"label": "Documents",
"data": "Documents Folder",
"expandedIcon": "fa-folder-open",
"collapsedIcon": "fa-folder",
"children": [{
"label": "Work",
"data": "Work Folder",
"expandedIcon": "fa-folder-open",
"collapsedIcon": "fa-folder",
"children": [{"label": "Expenses.doc", "icon": "fa-file-word-o", "data": "Expenses Document"}, {"label": "Resume.doc", "icon": "fa-file-word-o", "data": "Resume Document"}]
},
{
"label": "Home",
"data": "Home Folder",
"expandedIcon": "fa-folder-open",
"collapsedIcon": "fa-folder",
"children": [{"label": "Invoices.txt", "icon": "fa-file-word-o", "data": "Invoices for this month"}]
}]
},
... //omitted for brevity
]
}
Also, ich habe wirklich keine Ahnung über die Logik und die Datenbanktabelle Design (Menüs). Sollte ich den JSON oben auf dem Controller oder an einem anderen Ort generieren? Könnten Sie bitte Vorschläge und Lösungsansätze zu diesem Thema veröffentlichen?
@StephenMuecke Hallo Stephane, tut mir leid, aber ich habe wirklich keine Erfahrung mit diesem Thema. Wenn Sie Zeit haben, könnten Sie bitte ein Beispiel schreiben? Oder schlagen Sie mir eine Beispiel-Nutzungsseite im Internet vor? Vielen Dank im Voraus ... –
@StephenMuecke Liebe Stephane, ich war krank und kann deine Antwort nicht sehen. Warum hast du es gelöscht? Könnten Sie es bitte noch einmal posten? : (( –