Zusammenfassung zweier Methoden zum Implementieren der Vue-Druckfunktion

Zusammenfassung zweier Methoden zum Implementieren der Vue-Druckfunktion

Methode 1: Installieren Sie das Plugin über npm

1. Installieren Sie npm install vue-print-nb --save

2. Importieren Sie es nach der Installation in die Datei main.js

importiere Print von 'vue-print-nb' Vue.use(Print); //Registrieren

3. Jetzt können Sie es verwenden

<div id="Drucktest" >

  <p>Der Mond scheint auf die Berge</p>

    <p>Die Brise kommt vom Fluss</p>

</div>

<button v-print="'#printTest'">Drucken</button>

4. So drucken Sie über die Linkadresse: window.location.href = airway_bill; airway_bill ist die Linkadresse.

5. Sollte der Inhalt nicht vollständig ausgedruckt werden, klicken Sie während des Druckvorgangs auf Weitere Einstellungen und stellen Sie anschließend den Zoom ein.

Die zweite Methode: Laden Sie das Plug-In manuell auf den lokalen

Plugin-Adresse:

https://github.com/xyl66/vuePlugs_printjs

1. Erstellen Sie einen neuen Ordner „plugs“ unter „src“, legen Sie die heruntergeladene Datei „print.js“ in den Ordner „plugs“ und führen Sie dann die folgenden Schritte aus

Drucken aus '@/plugs/print' importieren
Vue.use(Print) // <Vorlage> registrieren
  <Abschnitt ref="Drucken">
    Inhalt drucken <div class="no-print">Druck mich nicht aus</div>
  </Abschnitt>
</Vorlage>
this.$print(this.$refs.print) // Verwendung

2. Hinweis: Sie müssen ref verwenden, um den DOM-Knoten abzurufen. Wenn Sie ihn direkt per ID oder Klasse abrufen, ist der gedruckte Inhalt nach dem Verpacken und Bereitstellen von Webpack leer.

3. Geben Sie den nicht druckbaren Bereich an

Methode 1. Fügen Sie eine No-Print-Stilklasse hinzu

<div class="no-print">Drucken Sie mich nicht aus</div>

Methode 2. Benutzerdefinierter Klassenname

<div class="do-not-print-me-xxx">Drucken Sie mich nicht aus</div>this.$print(this.$refs.print,{'no-print':'.do-not-print-me-xxx'}) // Verwenden

Stapeldruck

Beim Stapeldruck wird hier tatsächlich reines JS-Schreiben verwendet. Gehen wir direkt zum Code:

<Vorlage>
    <div>
        <ul Klasse="drucken-ul">
            <li v-for="(Element, Index) von Tabellendaten" :Schlüssel="Index" 
                :id="'printDiv' + index" Stil="Seitenumbruch nach: immer;">
                <div>
                    <p>{{Artikel.Datum}}</p>
                    <p>{{item.name}}</p>
                    <p>{{item.provinz}}</p>
                    <p>{{item.stadt}}</p>
                    <p>{{Artikel.Adresse}}</p>
                    <p>{{item.zip}}</p>
                </div>
            </li>
        </ul>
        <div @click="handlePrint">Drucken</div>
    </div>
</Vorlage>

<Skript>
    Standard exportieren {
        Daten() {
            zurückkehren {
                Tabellendaten: [{
                    Datum: '2016-05-03',
                    Name: 'Wang Xiaohu',
                    Provinz: 'Shanghai',
                    Stadt: 'Putuo District',
                    Adresse: „Nr. 1518, Jinshajiang Road, Putuo District, Shanghai“,
                    PLZ: 200333
                }, {
                    Datum: '2016-05-02',
                    Name: 'Wang Xiaohu',
                    Provinz: 'Shanghai',
                    Stadt: 'Putuo District',
                    Adresse: „Nr. 1518, Jinshajiang Road, Putuo District, Shanghai“,
                    PLZ: 200333
                }, {
                    Datum: '2016-05-04',
                    Name: 'Wang Xiaohu',
                    Provinz: 'Shanghai',
                    Stadt: 'Putuo District',
                    Adresse: „Nr. 1518, Jinshajiang Road, Putuo District, Shanghai“,
                    PLZ: 200333
                }, {
                    Datum: '2016-05-01',
                    Name: 'Wang Xiaohu',
                    Provinz: 'Shanghai',
                    Stadt: 'Putuo District',
                    Adresse: „Nr. 1518, Jinshajiang Road, Putuo District, Shanghai“,
                    PLZ: 200333
                }, {
                    Datum: '2016-05-08',
                    Name: 'Wang Xiaohu',
                    Provinz: 'Shanghai',
                    Stadt: 'Putuo District',
                    Adresse: „Nr. 1518, Jinshajiang Road, Putuo District, Shanghai“,
                    PLZ: 200333
                }, {
                    Datum: '2016-05-06',
                    Name: 'Wang Xiaohu',
                    Provinz: 'Shanghai',
                    Stadt: 'Putuo District',
                    Adresse: „Nr. 1518, Jinshajiang Road, Putuo District, Shanghai“,
                    PLZ: 200333
                }, {
                    Datum: '2016-05-07',
                    Name: 'Wang Xiaohu',
                    Provinz: 'Shanghai',
                    Stadt: 'Putuo District',
                    Adresse: „Nr. 1518, Jinshajiang Road, Putuo District, Shanghai“,
                    PLZ: 200333
                }]
            }
        },
        Methoden: {
            handlePrint() {
                var newWin = window.open(""); //Öffne ein neues leeres Fenster für (var i = 0; i < this.tableData.length; i++) {
                    var imageToPrint = document.getElementById("printDiv" + i); //Den zu druckenden Inhalt abrufen newWin.document.write(imageToPrint.outerHTML); //Den zu druckenden Inhalt dem neuen Fenster hinzufügen}
                const styleSheet = `<style>li{list-style:none}</style>`; 
                newWin.document.head.innerHTML = styleSheet; //Dem gedruckten Inhalt Stil hinzufügen newWin.document.close(); //Dieser Satz muss hinzugefügt werden, wenn er im Internet Explorer verwendet wird newWin.focus(); //Dieser Satz muss hinzugefügt werden, wenn er im Internet Explorer verwendet wird setTimeout(function() {
                    newWin.print(); //Drucken newWin.close(); //Fenster schließen }, 100);
            }
        }
    }
</Skript>

<Stil>
    .drucken-ul {
        Breite: 600px;
        Listenstil: keiner;
        Rand: 1px durchgezogen #e8e8e8;
    }
</Stil>

Zusammenfassen

Dies ist das Ende dieses Artikels über die Implementierung der Vue-Druckfunktion. Weitere relevante Inhalte zur Vue-Druckfunktion finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Zwei Möglichkeiten zum Implementieren der Druckfunktion in Vue
  • Verwenden von vue-print.js in Vue zum Drucken mehrerer Seiten
  • Implementierungscode des Vue-Druck-Plugins vue-print-nb
  • So drucken Sie Seiten mit vue-print-nb in vue

<<:  Lösung für das Problem der Installation der MySQL-komprimierten Version von Zip

>>:  So löschen Sie den MySQL-Dienst vollständig (bereinigen Sie die Registrierung)

Artikel empfehlen

So erstellen Sie DockerHub selbst

Der Docker Hub, den wir zuvor verwendet haben, wi...

Grundlegende Ideen zum Auffinden von Fehlern in der Web-Frontend-Entwicklung

Die WEB-Entwicklung besteht hauptsächlich aus zwe...

Verwendung und Analyse des Mysql Explain-Befehls

Mit dem Befehl „mysql explain“ wird gezeigt, wie ...

Tutorial zu HTML-Tabellen-Tags (13): Regeln für interne Rahmenstilattribute

Mit REGELN kann die Art der inneren Rahmen der Ta...

Detaillierte Erklärung der Primärschlüssel und Transaktionen in MySQL

Inhaltsverzeichnis 1. Kommentare zu MySQL-Primärs...

MySQL InnoDB-Überwachung (Systemebene, Datenbankebene)

MySQL InnoDB-Überwachung (Systemebene, Datenbanke...

Installieren Sie zwei MySQL5.6.35-Datenbanken unter Win10

Notieren Sie die Installation von zwei MySQL5.6.3...

So implementieren Sie einen einfachen HTML-Videoplayer

Dieser Artikel stellt die Methode zur Implementie...

Installieren Sie mysql5.7.17 mit RPM unter Linux

Die Installationsmethode von MySQL5.7 rpm unter L...

Das WeChat-Applet verwendet Canvas zum Zeichnen von Uhren

In diesem Artikel wird der spezifische Code zur V...

Detaillierte Erläuterung der Verwendung der Vue3-Statusverwaltung

Inhaltsverzeichnis Hintergrund Bereitstellen / In...

Der Implementierungsprozess der Linux-Prozessnetzwerkverkehrsstatistik

Vorwort Linux verfügt über entsprechende Open-Sou...

Grafisches Tutorial zur Installation von VMware15.5 und Ubuntu20.04

1. Vorbereitung vor der Installation 1. Laden Sie...