Zusammenfassung von 10 erstaunlichen Tricks von Element-UI

Zusammenfassung von 10 erstaunlichen Tricks von Element-UI

el-scrollbar Bildlaufleiste

Kommt Ihnen diese Komponente unbekannt vor? Das stimmt, denn sie ist nie auf der offiziellen Website von Element erschienen (wahrscheinlich aufgrund von Leistungsproblemen). Aber wie kann man etwas Gutes verbergen? Hier sind die Renderings.

Ist es nicht viel schöner als die native Bildlaufleiste? Die Verwendungsmethode ist auch sehr einfach:

<el-Bildlaufleiste>
  <div Klasse="Box">
    <p v-for="item in 15" :key="item">Willkommen bei der Verwendung der el-scrollbar {{item}}</p>
  </div>
</el-scrollbar>

<Stilbereich>
.el-scrollbar {
  Rand: 1px durchgezogen #ddd;
  Höhe: 200px;
}
.el-scrollbar :: v-tief .el-scrollbar__wrap {
    Überlauf-y: scrollen;
    Überlauf-x: versteckt;
  }
</Stil>

Solange die Höhe des inneren Felds der Bildlaufleiste die Höhe der Bildlaufleiste überschreitet, wird eine Bildlaufleiste angezeigt, und dasselbe gilt für die horizontale Bildlaufleiste.

el-upload simuliert Klick

Manchmal möchten wir die Upload-Funktion von el-upload verwenden, aber nicht den Stil von el-upload. Wie lässt sich das erreichen? Die Methode ist auch sehr einfach: Verstecken Sie einfach den el-Upload und simulieren Sie dann einen Klick.

<button @click="handleUpload">Datei hochladen</button>
<el-hochladen
  v-show="falsch"
  Klasse="Upload-Ressource"
  mehrere
  Aktion=""
  :http-request="KlickDatei hochladen"
  ref="hochladen"
  :on-success="Upload erfolgreich"
>
    Lokale Dateien hochladen</el-upload>

<Skript>
Standard exportieren {
    Methoden: {
        //Klick simulieren handleUpload() {
            document.querySelector(".upload-resource .el-upload").klick()
        },
        // Datei asynchron hochladen clickUploadFile(file) {
            const formData = new FormData()
            formData.append('Datei', Datei.Datei)
            const res = warte auf api.post(`xxx`, formData)
        }
        // Nachdem der Upload erfolgreich war, lösche die integrierte Dateiliste der Komponente uploadSuccess() {
            dies.$refs.upload.clearFiles()
        }
    }
}
</Skript>

Die Optionen der Dropdown-Box „el-select“ sind zu lang

Der Inhalt des Dropdown-Felds ist oft unkontrollierbar. Wenn die Optionen im Dropdown-Feld zu lang sind, führt dies zwangsläufig zu einer sehr inkonsistenten Seite. Die Lösung besteht darin, die einzelne Zeile wegzulassen und eine Textaufforderung hinzuzufügen.

<el-select popper-class="popper-class" :popper-append-to-body="false" v-model="value" placeholder="Bitte auswählen">
    <el-Option
      v-for="Element in Optionen"
      :Schlüssel="Artikel.Wert"
      :label="Artikel.label"
      :Wert="Artikel.Wert"
    >
        <el-tooltip
          Platzierung="oben"
          :deaktiviert="Artikelbezeichnungslänge<17"
        >
            <div Slot="Inhalt">
                <span>{{item.label}}</span>
            </div>
            <div class="iclass-text-ellipsis">{{ Element.label }}</div>
        </el-tooltip>
    </el-Option>
</el-Auswahl>

<Skript>
  Standard exportieren {
    Daten() {
      zurückkehren {
        Optionen: [{
          Wert: 'Option 1',
          Etikett: „Goldener Kuchen, goldener Kuchen, goldener Kuchen, goldener Kuchen, goldener Kuchen, goldener Kuchen, goldener Kuchen, goldener Kuchen, goldener Kuchen“
        }, {
          Wert: 'Option 2',
          Etikett: ‚Doppelhautmilch, Doppelhautmilch, Doppelhautmilch, Doppelhautmilch, Doppelhautmilch, Doppelhautmilch, Doppelhautmilch, Doppelhautmilch‘
        }, {
          Wert: 'Option 3',
          Etikett: ‚AusternomelettAusternomelettAusternomelettAusternomelettAusternomelettAusternomelettAusternomelettAusternomelett‘
        }],
        Wert: ''
      }
    }
  }
</Skript>

<Stilbereich>
.el-Auswahl {
  Breite: 300px;
}
.el-select ::v-deep .popper-Klasse {
  Breite: 300px;
}
.iclass-text-ellipsis {
  Leerzeichen: Nowrap;
  Überlauf: versteckt;
  Textüberlauf: Auslassungspunkte;
}
</Stil>

Die Wirkung ist wie folgt:

el-input darf am Anfang und Ende keine Leerzeichen enthalten

Wenn wir das Eingabefeld verwenden, möchten wir meistens nicht, dass Benutzer davor und danach Leerzeichen eingeben. Gibt es eine einfache Möglichkeit, dies zu überprüfen? Natürlich gibt es die.

<el-form :rules="Regeln" :model="Formular" label-width="80px">
    <el-form-item label="Aktivitätsname" prop="name">
        <el-input v-model="form.name"></el-input>
    </el-form-item>
</el-form>

<Skript>
Standard exportieren {
    Daten() {
        zurückkehren {
            bilden: {
                Name: ''
            },
            Regeln:
                Name: [
                        { erforderlich: true, Nachricht: ‚Bitte geben Sie den Aktivitätsnamen ein‘, Auslöser: ‚unscharf‘},
                        { Muster: /^(?!\s+).*(?<!\s)$/, Nachricht: 'Das erste und das letzte Leerzeichen dürfen nicht', Auslöser: 'unscharf' }
                ]
            }
        }
    }
}
</Skript>

Die Wirkung ist wie folgt:

el-input type=number Chinesische Zeichen eingeben und Fokus nach oben verschieben

Wenn el-input auf Typ „Zahl“ eingestellt ist, werden bei der Eingabe keine chinesischen Schriftzeichen angezeigt, aber der Fokus wird nach oben verschoben.

Lösung:

<Stilbereich>
::v-tief .el-input__inner {
    Zeilenhöhe: 1px !wichtig;
}
</Stil>

el-input type=number entfernt die Auf- und Ab-Pfeile bei Fokussierung

Lösung:

<el-input Klasse = "clear-number-input" Typ = "Nummer"></el-input>

<Stilbereich>
.clear-number-input ::v-deep input[Typ="Nummer"]::-webkit-outer-spin-button,
.clear-number-input ::v-deep input[Typ="Nummer"]::-webkit-inner-spin-button {
    -webkit-apperance: keines !wichtig;
}
</Stil>

el-form prüft nur ein Feld im Formular

Manchmal müssen wir einige Felder separat überprüfen, z. B. indem wir einen Bestätigungscode senden und die Mobiltelefonnummer separat überprüfen. Wir können dies tun:

dies.$refs.form.validateField('name', gültig => {
    if (gültig) { 
        console.log('senden!'); 
    } anders { 
        console.log('Fehler beim Senden!'); 
        gibt false zurück; 
    }
})

el-dialog öffnet das Popup-Fenster erneut und löscht die Formularinformationen

Manche Leute setzen das Formular in $nextTick zurück, wenn sie das Popup öffnen. Ich setze es jedoch nach dem Schließen des Popups zurück:

<el-dialog @closed="Form zurücksetzen">
    <el-form ref="form">
    </el-form>
</el-dialog>

<Skript>
Standard exportieren {
    Methoden: {
        Formular zurücksetzen() {
            dies.$refs.form.resetFields()
        }
    }
}
</Skript>

Die Einstellung der Eigenschaft „Destroy-on-Close“ von el-dialog ist ungültig.

Nachdem „Destroy-on-Close“ auf „True“ gesetzt wurde, wird festgestellt, dass das DOM-Element nach dem Schließen des Popup-Fensters immer noch vorhanden ist und nicht zerstört wird.
Lösung: Fügen Sie v-if zum El-Dialog hinzu.

<el-dialog :visible.sync="sichtbar" v-if="sichtbar" beim Schließen zerstören>
</el-dialog>

el-table Der Tabelleninhalt übersteigt die Auslassung

Wenn der Tabelleninhalt zu lang ist, ist es mühsam, Stile manuell hinzuzufügen. Ich verrate Ihnen insgeheim, dass Sie zur Lösung nur einen Show-Overflow-Tooltip hinzufügen müssen.

<el-table-column
  prop="Adresse"
  label="Adresse"
  Breite="180"
  Überlauf-Tooltip anzeigen
>
</el-Tabellenspalte>

Die Wirkung ist wie folgt:

Dies ist das Ende dieses Artikels mit der Zusammenfassung von 10 erstaunlichen Element-UI-Tricks. Weitere verwandte Element-Tricks finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die folgenden verwandten Artikel weiter. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Tipps zur Verwendung von Vue-Elementen und Nuxt
  • Einige Verwendungstipps für document.documentElement

<<:  MySQL-Reihe: Redo-Log, Undo-Log und Binlog – ausführliche Erklärung

>>:  So verwenden Sie Docker zum Erstellen eines privaten pypi-Repositorys

Artikel empfehlen

mysql Backup-Skript und halten Sie es für 7 Tage

Skriptanforderungen: Sichern Sie die MySQL-Datenb...

Detailliertes Tutorial zur Installation von PHP und Nginx auf Centos7

Da die Anwendung von CentOS auf der Serverseite i...

CSS realisiert die Layoutmethode „Fest links“ und „Adaptiv rechts“

1. Schwebendes Layout 1. Lassen Sie zuerst das Di...

Üben Sie die Verwendung von Golang, um mit der Docker-API zu spielen

Inhaltsverzeichnis Installieren des SDK Lokalen D...

Auf den Alibaba Cloud Server Tomcat kann nicht zugegriffen werden

Inhaltsverzeichnis 1. Einleitung 2. Lösung 2.1 Ko...

Lösen Sie das Problem der verstümmelten Zeichen im Tomcat10 Catalina-Protokoll

Laufumgebung, Idea2020-Version, Tomcat10, beim Au...

So entwerfen und optimieren Sie MySQL-Indizes

Inhaltsverzeichnis Was ist ein Index? Prinzip der...

Upgrade des Windows Server 2008R2-Dateiservers auf Windows Server 2016

Die Benutzerorganisation verfügt über zwei Window...

Analyse des Implementierungsprozesses der Docker-Container-Orchestrierung

In tatsächlichen Entwicklungs- oder Produktionsum...

So fragen Sie Datum und Uhrzeit in MySQL ab

Vorwort: Bei der Projektentwicklung werden in ein...

Detailliertes Tutorial zur Verwendung des Plugins tomcat8-maven-plugin in Maven

Ich habe viele Artikel online durchsucht, aber ke...

Informationen zur Nginx-GZIP-Konfiguration

Das Prinzip von nginx zur Erzielung einer Ressour...

Remotedesktopverbindung zwischen Windows und Linux

Wenn es um eine Remotedesktopverbindung zu Linux ...