Heim Web-Frontend js-Tutorial So implementieren Sie die Funktion zum Zuschneiden und Hochladen von Bildern in js über Vue in Cropper

So implementieren Sie die Funktion zum Zuschneiden und Hochladen von Bildern in js über Vue in Cropper

Jun 02, 2018 am 11:21 AM
javascript 上传

In diesem Artikel werden hauptsächlich relevante Informationen zur Funktion zum Zuschneiden und Hochladen von Bildern von Cropper Js basierend auf Vue vorgestellt. Freunde, die sie benötigen, können darauf verweisen.

Ich habe vor ein paar Tagen ein Projekt über das Vue-Projekt durchgeführt erfordert die Funktion zum Zuschneiden und Hochladen von Avataren. Ich habe einen Artikel gelesen und darauf basierende Änderungen vorgenommen, die ich gerne mit Ihnen teilen möchte. Originaltext: http://www.jb51.net/article/135719.htm

Laden Sie zuerst Cropper Js herunter und stellen Sie es vor,

npm install cropper js --save
Nach dem Login kopieren

Bei Bedarf Die Seiteneinführung: import Cropper from "cropper js"

Der HTML-Code lautet wie folgt:

<template> 
 <p id="demo"> 
 <!-- 遮罩层 --> 
 <p class="container" v-show="panel"> 
 <p> 
  <img id="image" :src="url" alt="Picture"> 
 </p> 
 <button type="button" id="button" @click="commit">确定</button> 
 <button type="button"id="cancel" @click="cancel">取消</button> 
 </p> 
 <p style="padding:20px;"> 
 <p class="show"> 
  <p class="picture" :style="&#39;backgroundImage:url(&#39;+headerImage+&#39;)&#39;"> 
  </p> 
 </p> 
 <p style="margin-top:20px;text-align: left;"> 
  <input type="file" id="change" accept="image" @change="change"> 
  <label for="change"></label> 
 </p> 
 </p> 
 </p> 
</template>
Nach dem Login kopieren

Es handelt sich hauptsächlich um JS-Code, wie folgt

1, legen Sie die Anfangsvariablen in den Daten fest und binden Sie die Daten imgCropperData ist das, was ich definiert habe, um das Bildformat zu bestimmen.

data() { 
 return { 
 headerImage: "", 
 picValue: "", 
 cropper: "", 
 croppable: false, 
 panel: false, 
 url: "", 
 imgCropperData: { 
 accept: "image/gif, image/jpeg, image/png, image/jpg" 
 } 
 }; 
 }
Nach dem Login kopieren

2, initialisieren Sie den Zuschneiderahmen in montierten

mounted() { 
 //初始化这个裁剪框 
 var self = this; 
 var image = document.getElementById("image"); 
 this.cropper = new Cropper(image, { 
 aspectRatio: 1, 
 viewMode: 1, 
 background: false, 
 zoomable: false, 
 ready: function() { 
 self.croppable = true; 
 } 
 }); 
 }
Nach dem Login kopieren

3.Methoden Dort Es gibt viele Methoden, darunter das Erstellen eines URL-Pfads, das Ändern eines Eingabefelds, das Zeichnen einer Leinwand und das Bestätigen der Übermittlung zum Hochladen. Ich habe außerdem eine Abbruchereignisfunktion hinzugefügt, um den Typ und die Größe der hochgeladenen Datei zu bestimmen.

methods: { 
 //取消上传 
 cancel() { 
 this.panel = false; 
 var obj = document.getElementById(&#39;change&#39;) ; 
 obj.outerHTML=obj.outerHTML; 
 }, 
 //创建url路径 
 getObjectURL(file) { 
 var url = null; 
 if (window.createObjectURL != undefined) { 
 // basic 
 url = window.createObjectURL(file); 
 } else if (window.URL != undefined) { 
 // mozilla(firefox) 
 url = window.URL.createObjectURL(file); 
 } else if (window.webkitURL != undefined) { 
 // webkit or chrome 
 url = window.webkitURL.createObjectURL(file); 
 } 
 return url; 
 }, 
 //input框change事件,获取到上传的文件 
 change(e) { 
 let files = e.target.files || e.dataTransfer.files; 
 if (!files.length) return; 
 let type = files[0].type; //文件的类型,判断是否是图片 
 let size = files[0].size; //文件的大小,判断图片的大小 
 if (this.imgCropperData.accept.indexOf(type) == -1) { 
 alert("请选择我们支持的图片格式!"); 
 return false; 
 } 
 if (size > 5242880) { 
 alert("请选择5M以内的图片!"); 
 return false; 
 } 
 this.picValue = files[0]; 
 this.url = this.getObjectURL(this.picValue); 
 //每次替换图片要重新得到新的url 
 if (this.cropper) { 
 this.cropper.replace(this.url); 
 } 
 this.panel = true; 
 }, 
 //确定提交 
 commit() { 
 this.panel = false; 
 var croppedCanvas; 
 var roundedCanvas; 
 if (!this.croppable) { 
 return; 
 } 
 // Crop 
 croppedCanvas = this.cropper.getCroppedCanvas(); 
 // Round 
 roundedCanvas = this.getRoundedCanvas(croppedCanvas); 
 this.headerImage = roundedCanvas.toDataURL(); 
 //上传图片 
 this.postImg(); 
 }, 
 //canvas画图 
 getRoundedCanvas(sourceCanvas) { 
 var canvas = document.createElement("canvas"); 
 var context = canvas.getContext("2d"); 
 var width = sourceCanvas.width; 
 var height = sourceCanvas.height; 
 canvas.width = width; 
 canvas.height = height; 
 context.imageSmoothingEnabled = true; 
 context.drawImage(sourceCanvas, 0, 0, width, height); 
 context.globalCompositeOperation = "destination-in"; 
 context.beginPath(); 
 context.arc( 
 width / 2, 
 height / 2, 
 Math.min(width, height) / 2, 
 0, 
 2 * Math.PI, 
 true 
 ); 
 context.fill(); 
 return canvas; 
 }, 
 //提交上传函数 
 postImg() { 
 alert("上传成功"); 
 //这边写图片的上传 
 } 
 }
Nach dem Login kopieren

Das oben Gesagte habe ich für Sie zusammengestellt. Ich hoffe, es wird Ihnen in Zukunft hilfreich sein.

Verwandte Artikel:

Wie lege ich globale Variablen in vue2 fest? (Detailliertes Tutorial)

So implementieren Sie die String-Verkettung in JS (Erweitern von String.prototype.format)

Verwenden ES6 zur Lösung des Speicherverlustproblems durch WeakMap (ausführliches Tutorial)

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Funktion zum Zuschneiden und Hochladen von Bildern in js über Vue in Cropper. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So implementieren Sie ein Online-Spracherkennungssystem mit WebSocket und JavaScript So implementieren Sie ein Online-Spracherkennungssystem mit WebSocket und JavaScript Dec 17, 2023 pm 02:54 PM

So implementieren Sie mit WebSocket und JavaScript ein Online-Spracherkennungssystem. Einführung: Mit der kontinuierlichen Weiterentwicklung der Technologie ist die Spracherkennungstechnologie zu einem wichtigen Bestandteil des Bereichs der künstlichen Intelligenz geworden. Das auf WebSocket und JavaScript basierende Online-Spracherkennungssystem zeichnet sich durch geringe Latenz, Echtzeit und plattformübergreifende Eigenschaften aus und hat sich zu einer weit verbreiteten Lösung entwickelt. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Spracherkennungssystem implementieren.

Einfache Schritte zum Hochladen Ihrer eigenen Musik auf Kugou Einfache Schritte zum Hochladen Ihrer eigenen Musik auf Kugou Mar 25, 2024 pm 10:56 PM

1. Öffnen Sie Kugou Music und klicken Sie auf Ihr Profilbild. 2. Klicken Sie auf das Symbolset in der oberen rechten Ecke. 3. Klicken Sie auf [Musikwerke hochladen]. 4. Klicken Sie auf [Werke hochladen]. 5. Wählen Sie das Lied aus und klicken Sie auf [Weiter]. 6. Klicken Sie abschließend auf [Hochladen].

So laden Sie Songtexte auf QQ Music hoch So laden Sie Songtexte auf QQ Music hoch Feb 23, 2024 pm 11:45 PM

Mit dem Aufkommen des digitalen Zeitalters sind Musikplattformen zu einer der wichtigsten Möglichkeiten für Menschen geworden, an Musik zu gelangen. Wenn wir jedoch ein Lied hören, stellen wir manchmal fest, dass es keinen Text gibt, was sehr beunruhigend ist. Viele Menschen hoffen, dass beim Anhören von Liedern Liedtexte angezeigt werden können, um den Inhalt und die Emotionen der Lieder besser zu verstehen. QQ Music, eine der größten Musikplattformen in China, bietet Benutzern auch die Funktion zum Hochladen von Liedtexten, damit Benutzer die Musik besser genießen und die Konnotation des Liedes spüren können. Im Folgenden erfahren Sie, wie Sie Liedtexte auf QQ Music hochladen. Erste

WebSocket und JavaScript: Schlüsseltechnologien zur Implementierung von Echtzeitüberwachungssystemen WebSocket und JavaScript: Schlüsseltechnologien zur Implementierung von Echtzeitüberwachungssystemen Dec 17, 2023 pm 05:30 PM

WebSocket und JavaScript: Schlüsseltechnologien zur Realisierung von Echtzeit-Überwachungssystemen Einführung: Mit der rasanten Entwicklung der Internet-Technologie wurden Echtzeit-Überwachungssysteme in verschiedenen Bereichen weit verbreitet eingesetzt. Eine der Schlüsseltechnologien zur Erzielung einer Echtzeitüberwachung ist die Kombination von WebSocket und JavaScript. In diesem Artikel wird die Anwendung von WebSocket und JavaScript in Echtzeitüberwachungssystemen vorgestellt, Codebeispiele gegeben und deren Implementierungsprinzipien ausführlich erläutert. 1. WebSocket-Technologie

So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript Dec 17, 2023 am 09:39 AM

So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript. Im heutigen digitalen Zeitalter müssen immer mehr Unternehmen und Dienste Online-Reservierungsfunktionen bereitstellen. Es ist von entscheidender Bedeutung, ein effizientes Online-Reservierungssystem in Echtzeit zu implementieren. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Reservierungssystem implementieren, und es werden spezifische Codebeispiele bereitgestellt. 1. Was ist WebSocket? WebSocket ist eine Vollduplex-Methode für eine einzelne TCP-Verbindung.

Verwendung von JavaScript und WebSocket zur Implementierung eines Echtzeit-Online-Bestellsystems Verwendung von JavaScript und WebSocket zur Implementierung eines Echtzeit-Online-Bestellsystems Dec 17, 2023 pm 12:09 PM

Einführung in die Verwendung von JavaScript und WebSocket zur Implementierung eines Online-Bestellsystems in Echtzeit: Mit der Popularität des Internets und dem Fortschritt der Technologie haben immer mehr Restaurants damit begonnen, Online-Bestelldienste anzubieten. Um ein Echtzeit-Online-Bestellsystem zu implementieren, können wir JavaScript und WebSocket-Technologie verwenden. WebSocket ist ein Vollduplex-Kommunikationsprotokoll, das auf dem TCP-Protokoll basiert und eine bidirektionale Kommunikation zwischen Client und Server in Echtzeit realisieren kann. Im Echtzeit-Online-Bestellsystem, wenn der Benutzer Gerichte auswählt und eine Bestellung aufgibt

So verbessern Sie die Upload-Geschwindigkeit Ihres Computers So verbessern Sie die Upload-Geschwindigkeit Ihres Computers Jan 15, 2024 pm 06:51 PM

Die Upload-Geschwindigkeit wird sehr langsam? Ich glaube, dass dies ein Problem ist, auf das viele Freunde beim Hochladen von Dateien auf ihren Computer stoßen. Wenn das Netzwerk beim Übertragen von Dateien über einen Computer instabil ist, ist die Upload-Geschwindigkeit sehr langsam. Im Folgenden erklärt Ihnen der Herausgeber, wie Sie das Problem der langsamen Upload-Geschwindigkeit des Computers lösen können. Wenn es um die Netzwerkgeschwindigkeit geht, wissen wir alle, dass die Geschwindigkeit beim Öffnen von Webseiten, die Download-Geschwindigkeit und die Upload-Geschwindigkeit ebenfalls sehr wichtig sind. Insbesondere einige Benutzer müssen häufig Dateien auf die Netzwerkfestplatte hochladen, sodass eine schnelle Upload-Geschwindigkeit zweifellos zu Einsparungen führt Sie sparen viel Geld. Was soll ich tun, wenn die Upload-Geschwindigkeit langsam ist? Nachfolgend stellt Ihnen der Editor Bilder und Texte zum Umgang mit langsamen Upload-Geschwindigkeiten auf dem Computer vor. Wie kann das Problem der langsamen Upload-Geschwindigkeit des Computers gelöst werden? Klicken Sie auf „Start – Ausführen“ oder „Fenstertaste“.

So machen Sie Fotos und laden sie auf den Computer hoch So machen Sie Fotos und laden sie auf den Computer hoch Jan 16, 2024 am 10:45 AM

Solange der Computer mit einer Kamera ausgestattet ist, kann er Bilder aufnehmen, einige Benutzer wissen jedoch immer noch nicht, wie man Bilder aufnimmt und hochlädt. Jetzt gebe ich Ihnen eine detaillierte Einführung in die Methode zum Aufnehmen von Bildern auf dem Computer. sodass Benutzer die Bilder hochladen können, wo immer sie möchten. So nehmen Sie Fotos auf und laden sie auf einen Computer hoch 1. Mac-Computer 1. Öffnen Sie den Finder und klicken Sie auf die Anwendung links. 2. Klicken Sie nach dem Öffnen auf die Kameraanwendung. 3. Klicken Sie einfach unten auf die Fotoschaltfläche. 2. Windows-Computer 1. Öffnen Sie das Suchfeld unten und geben Sie „Kamera“ ein. 2. Öffnen Sie dann die gesuchte Anwendung. 3. Klicken Sie auf die Fotoschaltfläche daneben.

See all articles