VorwortBei der Projektentwicklung gibt es viele Möglichkeiten, Symbole zu verwenden. Sie können geeignete Symbole auf Iconfont finden und sie über http verwenden oder direkt herunterladen. Hier zeige ich Ihnen eine Möglichkeit, Symbole durch die Implementierung benutzerdefinierter Komponenten einzuführen. Erstellen der UmgebungHier erstellen wir ein neues Projekt über @vue/cli 4.5.13 und müssen der Einfachheit halber die Abhängigkeit svg-sprite-loader installieren, um die entsprechenden svg-Symbole zu verarbeiten. Installation: Konfigurieren Sie vue.config.jsErstellen Sie nach der Installation von svg-sprite-loader eine neue vue.config.js, um Abhängigkeiten zu konfigurieren: // vue.config.js const { lösen } = erfordern ('Pfad') modul.exporte = { chainWebpack(Konfiguration) { Konfiguration .Modul .regel('svg') .ausschließen .add(auflösen('src/icons')) .Ende() Konfiguration .Modul .regel('Symbole') .prüfung(/\.svg$/) .enthalten .add(auflösen('src/icons')) .Ende() .verwenden('svg-sprite-loader') .loader('svg-sprite-loader') .Optionen({ symbolId: 'Symbol-[Name]' }) } } Hier sind zwei über chainWebpack vorgenommene Konfigurationen:
Erstellen einer neuen SymbolkomponenteErstellen Sie eine neue Datei SvgIcon.vue im Komponentenverzeichnis: <Vorlage> <i Klasse="Symbol"> <!-- aria-hidden, um Menschen mit Behinderungen das Lesen zu erleichtern (das Gerät überspringt dieses Tag beim Lesen des Inhalts, um Verwirrung zu vermeiden) --> <svg aria-hidden="true" :width="size" :height="size" :fill="fillColor"> <use :xlink:href="iconName" rel="external nofollow" ></use> </svg> </i> </Vorlage> <script lang="ts"> importiere { PropType, toRefs } von 'vue' Standard exportieren { Requisiten: { Größe: { Typ: Zahl als PropType<Zahl>, Standard: 14 }, Füllfarbe: { Typ: String als PropType<string>, Standard: „#000“ }, Symbolname: Typ: String als PropType<string>, erforderlich: true } }, setup(Eigenschaften: beliebig) { const { Größe, Füllfarbe, Symbolname: _Symbolname } = toRefs(Eigenschaften) const iconName = `#${_iconName.value}` zurückkehren { Größe, Füllfarbe, Symbolname } } } </Skript> Erstellen Sie dann ein neues Symbolverzeichnis und eine neue Indexdatei, die an die Komponente angehängt wird, und importieren Sie das SVG-Symbol: // index.ts Importiere SvgIcon aus '@/components/SvgIcon.vue' importiere { App } von 'vue' exportiere Standard (App: App) => { app.component('svg-icon', SvgIcon) } const ctx = require.context('./svg', false, /\.svg$/) const requestAll = (ctx: __WebpackModuleApi.RequireContext) => ctx.keys().forEach(ctx) AnfrageAlle(ctx) //main.ts importiere { createApp } von 'vue' App aus „./App.vue“ importieren importiere installSvgIcon aus '@/icons/index' const app = createApp(App) installSvgIcon(App) app.mount('#app') Diese Datei hat zwei Aufgaben:
Verwenden von KomponentenZuerst müssen wir die SVG-Symboldatei im Verzeichnis icons/svg speichern (suchen Sie die gewünschte Datei auf iconfont). Dann können Sie es woanders verwenden: <Vorlage> <img alt="Vue-Logo" src="./assets/logo.png"> <svg-icon Symbolname="Symbol-Dashboard"></svg-icon> <HelloWorld msg="Willkommen bei Ihrer Vue.js + TypeScript-App"/> </Vorlage> Führen Sie es direkt über die Komponente SVG-Icon ein und übergeben Sie dann den Icon-Namen. Der Wert des Icon-Namens besteht aus dem mit dem SVG-Dateinamen verknüpften Icon. ZusammenfassenDiese benutzerdefinierte Methode zum Einführen von SVG-Symbolen ist recht praktisch. Wenn Sie ein Symbol hinzufügen möchten, können Sie dies in wenigen Schritten tun:
Es ist jedoch nicht sehr praktisch, den Stil über CSS zu ändern. Damit ist der Artikel zum Einführen von Symbolen auf Grundlage der benutzerdefinierten Komponenten von Vue abgeschlossen. Weitere Informationen zu den benutzerdefinierten Symbolkomponenten 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:
|
<<: Lösung für Verbindungsfehler beim MySQL-Server 5.5
>>: So erweitern Sie die Festplattenpartition für das CentOS-System
Holen Sie sich das aktuelle Datum + die aktuelle ...
Inhaltsverzeichnis Gängige Komprimierungsformate:...
Vorwort In JavaScript müssen Sie document.querySe...
Die neueste Verpackungsschachtel für Perfect Aloe...
Während des Entwicklungsprozesses stoße ich häufi...
Das CSS-Zählerattribut wird von fast allen Browse...
Centos7 verwendet Yum, um MySQL zu installieren u...
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis 1.mysqldump Ausführungsprozess...
Vorwort In diesem Artikel wird hauptsächlich ein ...
Inhaltsverzeichnis I. Überblick 2. Konventionelle...
Inhaltsverzeichnis Knoten-Ereignisschleife Ereign...
Inhaltsverzeichnis Vorwort 1. So stornieren Sie e...
Inhaltsverzeichnis Zeichenfolgenlänge: Länge char...
Machen Sie sich keine Sorgen, wenn Sie das Wagenr...