Kapselungsmethode der Vue-Breadcrumbs-Komponente

Kapselungsmethode der Vue-Breadcrumbs-Komponente

Vue kapselt die Breadcrumb-Komponente zu Ihrer Information. Die spezifischen Inhalte sind wie folgt

Um den Effekt zu erzielen

Vorwort

Viele E-Commerce-Produkte müssen eine Breadcrumb-Navigation implementieren, um das Benutzererlebnis zu optimieren

1. Primäre Breadcrumb-Paketkomponenten

1. Kapselung der Infrastrukturkomponente Bread.vue

<Vorlage>
  <div Klasse='xtx-Brot'>
    <div Klasse="xtx-bread-item">
      <RouterLink zu="/">Zuhause</RouterLink>
    </div>
    <i class="iconfont icon-angle-right"></i>
    <div Klasse="xtx-Brot-Artikel">
      <RouterLink to="/category/10000">Sekundäre Navigation</RouterLink>
    </div>
    <i class="iconfont icon-angle-right"></i>
    <div Klasse="xtx-bread-item">
      <span>Navigation der dritten Ebene</span>
    </div>
  </div>
</Vorlage>

<Stil scoped lang='less'>
.xtx-Brot{
  Anzeige: Flex;
  Polsterung: 25px 10px;
  &-Artikel {
    A {
      Farbe: #666;
      Übergang: alle .4s;
      &:schweben {
        Farbe: @xtxColor;
      }
    }
  }
  ich {
    Schriftgröße: 12px;
    Rand links: 5px;
    Rand rechts: 5px;
    Zeilenhöhe: 22px;
  }
}
</Stil>

2. Definieren Sie Props, um parentPath- und parentName-Eigenschaften sowie Standard-Slots verfügbar zu machen und Komponenten dynamisch zu rendern.

<div Klasse='xtx-Brot'>
     <div Klasse="xtx-bread-item">
       <RouterLink zu="/">Zuhause</RouterLink>
     </div>
     <i class="iconfont icon-angle-right"></i>
    <Vorlage v-if="übergeordneterName">
     <div Klasse="xtx-bread-item" v-if="übergeordneterName">
       <RouterLink v-if="parentPath" to="/category/10000">{{parentName}}</RouterLink>
       <span v-else>{{parentName}}</span>
     </div>
    </Vorlage>
    <i v-if="übergeordneterName" Klasse="iconfont icon-angle-right"></i>
    <div Klasse="xtx-bread-item">
      <span> <slot/> </span>
    </div>
  </div>
// Verwenden Sie Props, um Daten zu empfangen. Props: {
    übergeordneterName: {
      Typ: Zeichenfolge,
      Standard: ''
    },
    übergeordneter Pfad: {
      Typ: Zeichenfolge,
      Standard: ''
    }
  }

3. Komponenten registrieren und Verifizierungseffekte nutzen

importiere Bread aus „./Bread“
Standard exportieren {
  installieren (App) {
    // In Vue2 ist der Parameter der Vue-Konstruktor // In Vue3 ist der Parameter das Instanzobjekt der Stammkomponente // Konfigurieren Sie eine globale Komponente app.component(Bread.name, Bread)
  }
}

4. Komponenten verwenden

<Bread parentPath="/category/1005000" parentName="Bekleidung">Flying Knit-Serie</Bread>
<Bread parentName="Apparel">Flying Weave Series</Bread> //Kann nach dem Entfernen von parentPath nicht springen

2. Erweiterte Verpackung Infinitus-Navigation

Siehe die Breadcrumb-Komponente von element-ui:

<el-breadcrumb separator="/">
  <el-breadcrumb-item :to="{ path: '/' }">Startseite</el-breadcrumb-item>
  <el-breadcrumb-item><a href="/" rel="external nofollow" >Aktivitätsmanagement</a></el-breadcrumb-item>
  <el-breadcrumb-item>Aktivitätsliste</el-breadcrumb-item>
  <el-breadcrumb-item>Veranstaltungsdetails</el-breadcrumb-item>
</el-breadcrumb>

1. Kapselung der Infrastrukturkomponente BrendItem.vue

<Vorlage>
  <div Klasse="xtx-Brot-Artikel">
    <RouterLink v-if="zu" :zu="zu"><slot /></RouterLink>
    <span v-else><slot /></span>
    <i class="iconfont icon-angle-right"></i>
  </div>
</Vorlage>
<Skript>
Standard exportieren {
  Name: "XtxBreadItem",
  Requisiten: {
    Zu:
      Typ: [String, Object] //Der Wert von to kann entweder ein String oder ein Objekt sein}
  }
}
</Skript>
//Bei Verwendung von <bread-item to="/xxx/id"></bread-item>
<Brotelement: bis = '{Pfad:"/xxx/id"}'></Brotelement>

2. Kapseln Sie Brend.vue ein

<Vorlage>
  <div Klasse='xtx-Brot'>
    <Steckplatz />
  </div>
</Vorlage>

<Skript>
Standard exportieren {
  Name: „XtxBread“
}
</Skript>

<Stil scoped lang='less'>
.xtx-Brot {
  Anzeige: Flex;
  Polsterung: 25px 10px;
  :tief(&-item) {
    A {
      Farbe: #666;
      Übergang: alle 0,4 s;
      &:schweben {
        Farbe: @xtxColor;
      }
    }
  }
  :tief(i) {
    Schriftgröße: 12px;
    Rand links: 5px;
    Rand rechts: 5px;
    Zeilenhöhe: 22px;
  }
}
</Stil>

3. Registrierung

importiere BreadItem aus „./BreadItem“
importiere Bread aus „./Bread“
Standard exportieren {
  installieren (App) {
    // In Vue2 ist der Parameter der Vue-Konstruktor // In Vue3 ist der Parameter das Instanzobjekt der Stammkomponente // Konfigurieren Sie eine globale Komponente app.component(Bread.name, Bread)
    app.komponente(BreadItem.name, BreadItem)
  }
}

4. Nutzung

// Brotkrümel
    <BreadItem to="/">Startseite</XtxBreadItem>
    <BreadItem to="/category/1005000">Kleidung</XtxBreadItem>
    <BreadItem >Flying Weave-Serie</XtxBreadItem>
</XtxBread>

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Mehrere Möglichkeiten zum Kapseln von Breadcrumb-Funktionskomponenten in Vue3
  • Tutorial zur in Vue gekapselten Breadcrumbs-Komponente
  • Vue + Element-UI-Tabellenkapselungs-Tag-Label mit Slot
  • Implementierung des Vue-Top-Tags-Browserverlaufs
  • Praktische Vue-Tags zum Erstellen eines Cache-Navigationsprozesses
  • Vue-Grundlagen: Breadcrumbs und Tags – ausführliche Erklärung

<<:  Implementierungsprinzip und Codebeispiele für die Komprimierungsdatei des Linux-Befehls gzip

>>:  Tipps zur MySQL-Leistungsoptimierung

Artikel empfehlen

Vue implementiert einen beweglichen schwebenden Button

In diesem Artikelbeispiel wird der spezifische Co...

Mysql Sql-Anweisungsübungen (50 Fragen)

Tabellenname und Felder –1. Studentenliste Studen...

Detaillierte Erklärung, wie eine SQL-Anweisung in MySQL ausgeführt wird

Überblick Ich habe vor Kurzem begonnen, mir Wisse...

CSS Sticky Footer-Implementierungscode

Dieser Artikel stellt den Implementierungscode fü...

Grafisches Tutorial zur Installation und Konfiguration von MySQL Server 5.7.20

Dieser Artikel zeichnet die Installations- und Ko...

jQuery implementiert die Funktion zum Ziehen von Bildern mit der Maus

In diesem Beispiel wird jQuery verwendet, um eine...

Einführung in das Layout des HTML-Seitenquellcodes_Powernode Java Academy

Einführung in das Layout des HTML-Seitenquellcode...