Technologie-Stack
Wirkung<Vorlage> <div Klasse="Hauptkarte"> <el-Zeile> <el-col :span="3"> <div Klasse="Menü-alle"> <div Klasse="Menükopf"> <span class="menu-head-title">Lagerverwaltung</span>/<span class="menu-head-title" @click="goBack" >Großer Bildschirm</span> > </div> <!-- <div class="menu-body"> <div class="menu-item" @click="openTabs(item)" v-for="item in Menüelementen" :key="item"> <i class="el-icon-s-home" v-if="item.value === '01'"></i>{{ item.name }} </div> </div> --> <a-Menü Modus="inline" Thema="dunkel" :openKeys="offeneSchlüssel" v-Modell="AusgewählteSchlüssel" @openChange="beiOpenChange" > <a-sub-menu v-for="Element in Menüelementen" :key="Element.Wert"> <span slot="Titel" ><a-icon type="appstore" /><span>{{ item.name }}</span></span > <a-Menüpunkt v-für="Kinderelement in Element.Kinder" :Schlüssel="childrenItem.value" @click="Tabs hinzufügen(untergeordnetesElement)" >{{ childrenItem.name }} </a-Menüelement> </a-Untermenü> </a-Menü> </div> </el-col> <el-col :span="21"> <el-Zeile> <el-col :span="24"> <div> <el-tabs v-model="editableTabsValue" type="card" schließbar @tab-remove="Tab entfernen"> <el-tab-pane v-for="Element in bearbeitbaren Tabs" :key="Element.name" :label="Element.title" :name="Element.name"> <Komponente: ist = "Artikel.Inhalt"></Komponente> </el-tab-pane> </el-tabs> </div> </el-col> </el-row> </el-col> </el-row> </div> </Vorlage> <Skript> Standard exportieren { Daten(){ zurückkehren { openKeys: [], // Steuert das Ein- und Ausklappen des Menüs der ersten Ebene, um den Wert des Menüs der ersten Ebene zu speichern SelectedKeys: '', //Steuert das sekundäre Menü, um den sekundären Menüwert hervorzuheben und zu speichern //Seitliches Navigationsmenü-Array menuItems: [ { Name: 'Eingehende und ausgehende Berichte', Wert: '0', Kinder: [ { Name: 'Bericht über die Menge der eingehenden Bestellungen', Wert: '01', Inhalt: () => import('@/views/main/index/qtyReportIndex.vue'), }, { Name: 'Meldung über die Anzahl der einzulagernden Einheiten', Wert: '02', Inhalt: () => import('@/views/main/index/qtyReportIndexQty.vue'), }, { Name: 'Bericht über die Menge der zu versendenden Bestellungen', Wert: '03', Inhalt: () => import('@/views/main/index/handoverReportIndex.vue'), }, { Name: 'Bericht über die Anzahl der auszuliefernden Einheiten', Wert: '04', Inhalt: () => import('@/views/main/index/handoverReportIndexQty.vue'), }, ], }, { Name: 'Vorhersage', Wert: '1', Kinder: [ { Name: 'Ankunftsanmeldung', Wert: '11', Inhalt: () => import('@/views/main/index/asnHdrDockIndex.vue'), }, { Name: 'Lagerauslastung', Wert: '12', Inhalt: () => import('@/views/main/index/whUteIndex.vue'), }, { Name: 'Bestand im Lager', Wert: '13', Inhalt: () => import('@/views/main/index/imOdsStorageIndex.vue'), }, ], }, { Name: 'Indikator', Wert: '2', Kinder: [ { Name: 'Einzellager-Abholrate', Wert: '201', Inhalt: () => import('@/views/main/index/singleWhDeliveryScaleIndex.vue'), }, { Name: 'Transportzeit im Lager', Wert: '202', Inhalt: () => import('@/views/main/index/transitDurationInWhIndex.vue'), }, { Name: 'SN wiederholen', Wert: '203', Inhalt: () => import('@/views/main/index/dwExceptionBarcodeIndex.vue'), }, { Name: 'Tägliche Inventarliste', Wert: '204', Inhalt: () => import('@/views/main/index/inventoryRqIndex.vue'), }, { Name: 'Überwachung des Datenbanktransferindikators', Wert: '205', Inhalt: () => import('@/views/main/index/transferIndexIndex.vue'), }, { Name: 'Zusammenfassender Bericht zur Kommissionierortanalyse', Wert: '206', Inhalt: () => import('@/views/main/index/pickingByLocSumIndex.vue'), }, { Name: „Berichtszusammenfassung wird geladen“, Wert: '207', Inhalt: () => import('@/views/main/index/loadingSummaryIndex.vue'), }, { Name: 'Fehlerrate ausgehender SN', Wert: '208', Inhalt: () => import('@/views/main/index/dwBarcodeErrorRptIndex.vue'), }, { Name: 'Details zur Kommissionierortanalyse', Wert: '209', Inhalt: () => import('@/views/main/index/dwPickFxmxIndex.vue'), }, { Name: 'Lagerbereichsdimensionierung nicht auf Batchkommissionierung basierend', Wert: '210', Inhalt: () => Import('@/views/main/index/notPickingByBatchIndex.vue'), }, ], }, ], editableTabsValue: '', //Das aktuell aktive Element auf der Registerkartenseite editableTabs: [], //Registerkarten-Array } }, Methoden:{ // Methode um von anderen Seiten zur Startseite zu springen und die Registerkarte zu öffnen // goTable(item) { // dies.openKeys = [item.value.substring(0, 1)] // diese.SelectedKeys = Artikel.Wert // dies.$store.commit('updateHomeOrIndexSwitch', false) // dies.openTabs(Element) //}, addTab(Element) { lass onOff = false; this.editableTabs.forEach((x) => { wenn (x.name == Artikel.name) { this.editableTabsValue = Artikelname einAus=wahr zurückkehren; } }) wenn(!anAus){ dies.editableTabs.push({ Titel: Artikelname, Name: Artikelname, Inhalt: Element.Inhalt, }) this.editableTabsValue = Artikelname } }, //Schließen Sie die Registerkarte, um targetName = item.name auszulösen. removeTab(Zielname) { let tabs = diese.editableTabs let activeName = this.editableTabsValue wenn (aktiverName === zielName) { tabs.fürJeden((tab, index) => { wenn (tab.name === zielName) { let nextTab = tabs[index + 1] || tabs[index - 1] wenn (nächsterTab) { aktiverName = nächsterTab.name } anders { dies.openKeys = [] diese.SelectedKeys = '' } } }) } this.editableTabsValue = aktiverName this.editableTabs = tabs.filter((tab) => tab.name !== Zielname) }, }, betrachten:{ editierbarerTabsWert(Wert) { dies.menuItems.forEach((menuItem) => { wenn (Menüelement.Kinder) { menuItem.children.fürJedes((childrenItem) => { wenn (childrenItem.name === val) { this.openKeys = [childrenItem.value.substring(0, 1)] dies.SelectedKeys = childrenItem.value zurückkehren } }) } }) }, } } </Skript> analysierenDieser Satz von Komponenten kann nicht von einem einzigen Elementframework implementiert werden. Für die seitliche Navigationsleiste müssen wir die Parameter zum Einklappen, Hervorheben und zur Menügruppe steuern. Der Parameter des Navigationsmenüs des Elements zur Steuerung der ein- und ausklappbaren Menügruppe ist eine Funktion @open-Steuerung. Daher haben wir keine Möglichkeit, das Ausklappen und Zusammenklappen einer Menügruppe über Code zu steuern. Daher haben wir eine solche Funktion im gesamten Framework erstellt, um sie aufzuzeichnen. Damit ist dieser Artikel über den Beispielcode für die Implementierung der seitlichen Navigationsleiste und der Registerkartenseitenzuordnung durch Vue abgeschlossen. Weitere relevante Inhalte zur seitlichen Navigationsleiste und der Registerkartenseitenzuordnung von Vue finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung des Abstandsproblems zwischen IMG-Tags
>>: 43 Webdesign-Fehler, auf die Webdesigner achten sollten
Dieser Artikel zeigt ein kleines Beispiel für das...
Vorwort Wenn der Systemspeicherplatz zu groß ist ...
1. Iframe-Definition und -Verwendung Das Iframe-E...
Seit kurzem ist https auch auf dem Handy möglich....
Da sich die heimische Netzwerkumgebung immer weit...
Der vollständige Name von SSH ist Secure SHell. D...
Die Indexzusammenführung ist ein intelligenter Al...
In den vorherigen Kapiteln haben wir die Auswahl ...
Beim Verwenden des XAML-Layouts müssen manchmal ei...
Um es gleich auf den Punkt zu bringen: Bei manche...
In diesem Artikel wird der spezifische Code eines...
Erstens: über Text/HTML var txt1="<h1>...
Einführung: Als ich mir in letzter Zeit die Frage...
Vor ein paar Tagen habe ich mir ein Video von ein...
Das Tutorial zur Datenbankinstallation von MySQL-...