1. Erstellen Sie ein Vue-Projekt (verwenden Sie CLI zum Erstellen eines Gerüsts. Dieses Testprojekt wird mit Vue CLI4 konfiguriert.) 2. Erstellen Sie eine benutzerdefinierte Komponente Der spezifische Code lautet wie folgt: <Vorlage> <svg :class="svgClass" aria-hidden="true" v-on="$listeners"> <use :xlink:href="iconName" rel="external nofollow" /> </svg> </Vorlage> <Skript> Standard exportieren { Name: "SvgIcon", Requisiten: { Symbolklasse: { Typ: Zeichenfolge, erforderlich: wahr, }, Klassenname: { Typ: Zeichenfolge, Standard: "", }, }, berechnet: { Symbolname() { gibt `#icon-${this.iconClass}` zurück; }, svgClass() { wenn (dieser.Klassenname) { gibt "SVG-Symbol" + diesen Klassennamen zurück; } anders { gibt "SVG-Symbol" zurück; } }, }, }; </Skript> <Stilbereich> .svg-Symbol { Breite: 1em; Höhe: 1em; vertikale Ausrichtung: -0,15em; füllen: aktuelle Farbe; Überlauf: versteckt; } </Stil> 3. Erstellen Sie Symbole im Stammverzeichnis, erstellen Sie eine neue index.js (die später global importiert wird) und erstellen Sie ein neues SVG-Verzeichnis zum Speichern von SVG-Bildern (Informationen zum Herunterladen von SVG finden Sie unter Alibabas Iconfont. Suchen Sie einfach nach Baidu). Der spezifische Code von index.js lautet wie folgt: Vue von „vue“ importieren importiere SvgIcon von '@/components/svgIcon' // SVG-Komponente // global registrieren Vue.component('svg-icon', SvgIcon) const req = require.context('./svg', false, /\.svg$/) const requireAll = requireContext => requireContext.keys().map(requireContext) erfordernAlles(req) 4. Importieren Sie main.js global zur Einführung 5. Zu diesem Zeitpunkt muss das Projekt auch vue.config.js konfigurieren (sonst wird es nicht angezeigt). const Pfad = require('Pfad') modul.exporte = { chainWebpack: Konfiguration => { const svgRule = config.module.rule('svg') svgRule.uses.clear() svgRegel .prüfung(/\.svg$/) .include.add(Pfad.resolve(__dirname, './src/icons')).end() .verwenden('svg-sprite-loader') .loader('svg-sprite-loader') .Optionen({ symbolId: 'Symbol-[Name]' }) const fileRule = config.module.rule('Datei') fileRule.uses.clear() Dateiregel .prüfung(/\.svg$/) .exclude.add(Pfad.auflösen(__dirname, './src/icons')) .Ende() .use('Dateilader') .loader('Dateilader') } } Das ist es; 6. Komponenten im Projekt verwenden Hier verwende ich zur Einführung funktionale Komponenten, die auch durch normale Methoden zur Verwendung von Komponenten eingeführt werden können <Skript> Standard exportieren { funktional: wahr, Requisiten: { Ebene: Typ: Nummer, erforderlich: wahr, }, }, rendern: Funktion (h, Kontext) { konsole.log(Kontext); lass vnodes = []; let { Ebene } = Kontext.Eigenschaften; // vnodes.push(<i class="el-icon-edit" style="width:19px"></i>); vnodes.push(<svg-icon icon-class="date"></svg-icon>); vnodes.push(<span class="span">{level}</span>); vnodes zurückgeben; }, }; </Skript> <Stilbereich> .span { Schriftgröße: 50px; } </Stil> Hinweis: Der Wert der Symbolklasse ist direkt der Dateiname von SVG. Damit ist dieser Artikel über die Schritte zum Einkapseln und Konfigurieren von SVG-Komponenten in Vue-Projekten abgeschlossen. Weitere Informationen zum Einkapseln und Konfigurieren von Vue-SVG-Komponenten 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:
|
<<: Müssen die Texte der Website noch gestaltet werden?
>>: Flex-Anordnung in CSS darstellen (Layouttool)
Vorwort Ingenieure, die im Linux-Umfeld arbeiten,...
In diesem Artikel wird der spezifische Code von V...
Ich arbeite derzeit an elektronischen Archiven un...
Szenario: Eine Laradock-Entwicklungsumgebung (php...
Inhaltsverzeichnis Lassen Sie uns zunächst über d...
In diesem Artikelbeispiel wird der spezifische Co...
Normalerweise wählt ein CSS-Selektor von oben nac...
Warum hat CSS einen Kaskadierungsmechanismus? Da ...
Das Implementierungsprinzip der bidirektionalen D...
Vorwort Heutzutage gibt es viele Geräte, darunter...
Durch Ausnutzen einer neu entdeckten Sudo-Sicherh...
Zusammenfassung: Welche Methode sollte für die My...
Treemaps dienen vor allem der Visualisierung baum...
Typische MySQL-Szenarien: Schnittmenge und Differ...
Inhaltsverzeichnis 1. Das Prinzip der Index-Push-...