input調用手機攝像頭實現拍照功能vue

項目需要一個拍照功能,實現功能如下圖所示:若使用瀏覽器則可以直接上傳圖片,若使用手機則調用手機攝像頭拍照。

在這里插入圖片描述
在這里插入圖片描述

1.代碼結構

<!--input標簽-->
<input ref="photoRef"type="file"accept="image/*"capture="environment"@change="handleImageCapture"style="display:none"><!-- 照片框--><div class="photo-box"><!-- 拍照 --><div v-if="cameraShow" @click="cameraClick" class="camera-box"><img src="@/assets/img/camera.png" alt="" class="camera-icon"><div class="text">點擊拍攝照片</div></div><!-- 照片 --><div v-else class="picture-box"><span @click="deletePic"><i class="el-icon-close"></i></span><img id="photoImg" src="" alt=""></div></div>

2.操作函數

/*** 相機點擊事件*/
cameraClick() {this.$refs.photoRef.dispatchEvent(new MouseEvent('click'));
},/*** 上傳照片事件*/
handleImageCapture(event) {if (event.target.files.length === 0) {return;}this.$store.commit('SET_CAMERA_SHOW', false)let file = event.target.files[0];//在頁面展示圖片this.showPhoto(file)this.$store.commit('SET_PHOTO_FILE', file)
},/*** 在頁面展示照片*/
showPhoto(file) {let reader = new FileReader();reader.onload = function (e) {let img = document.getElementById('photoImg');img.src = e.target.result;};reader.readAsDataURL(file);
},/*** 刪除照片*/
deletePic() {this.$store.commit('SET_CAMERA_SHOW', true)this.$store.commit('SET_PHOTO_FILE', null)
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/37448.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/37448.shtml
英文地址,請注明出處:http://en.pswp.cn/web/37448.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Leetcode 3202. Find the Maximum Length of Valid Subsequence II

Leetcode 3202. Find the Maximum Length of Valid Subsequence II 1. 解題思路2. 代碼實現 題目鏈接&#xff1a;3202. Find the Maximum Length of Valid Subsequence II 1. 解題思路 這一題的話是上一題3201. Find the Maximum Length of Valid Subsequence I的升級版&am…

基于多源數據的密碼攻防領域知識圖譜構建

源自&#xff1a; 信息安全與通信保密雜志社 作者&#xff1a;曹增輝 , 郭淵博 , 黃慧敏 摘 要 提高網絡空間安全的密碼攻防能力&#xff0c;需要形成可表示、可共享、可分析的領域知識模式和知識庫。利用自頂向下的構建方法&#xff0c;并通過本體構建方法梳理密碼攻防領域…

IPSec:互聯網協議安全機制的深度解析與應用

目錄 一、IPSec概述 二、IPSec的組成 三、IPSec的工作原理 四、IPSec的用途 IPSec&#xff08;Internet Protocol Security&#xff09;作為現代網絡通信中不可或缺的安全基礎設施&#xff0c;旨在為基于IP&#xff08;Internet Protocol&#xff09;的數據傳輸提供端到端的…

MySQL數據庫鎖詳解

MySQL數據庫鎖詳解 在多用戶環境下&#xff0c;數據庫鎖用于保證事務的完整性和數據的一致性。MySQL提供了多種不同類型的鎖&#xff0c;以適應不同的并發需求和性能考慮。本文將詳細介紹MySQL中的鎖機制&#xff0c;包括鎖的類型、鎖定機制的原理以及如何管理鎖。 1. 鎖的類…

【Linux】虛擬機安裝openEuler 24.03 X86_64 教程

目錄 一、概述 1.1 openEuler 覆蓋全場景的創新平臺 1.2 系統框架 1.3 平臺框架 二、安裝詳細步驟 一、概述 1.1 openEuler 覆蓋全場景的創新平臺 openEuler 已支持 x86、Arm、SW64、RISC-V、LoongArch 多處理器架構&#xff0c;逐步擴展 PowerPC 等更多芯片架構支持&…

時間序列季節性和周期性

季節性 (Seasonality) 定義 季節性是指時間序列數據中由于自然、社會或經濟因素&#xff0c;在固定且短期的時間間隔內&#xff08;如每年、每季度、每月或每周&#xff09;重復出現的模式或波動。 特點 固定周期&#xff1a;季節性波動有一個固定的周期。例如&#xff0c;…

【小工具】 Unity相機寬度適配

相機默認是根據高度適配的&#xff0c;但是在部分游戲中需要根據寬度進行適配 實現步驟 定義標準屏幕寬、高判斷標準屏幕寬高比與當前的是否相等通過**&#xff08;標準寬度/當前寬度&#xff09; &#xff08;標準高度 / 當前高度&#xff09;**計算縮放調整相機fieldOfView即…

iptables 防火墻(一)

iptables 防火墻&#xff08;一&#xff09; 一、Linux 防火墻基礎防火墻分類 二、iptables 的表、鏈結構規則表規則鏈數據包過濾的匹配流程 三、編寫防火墻規則iptables 的安裝iptables的基本語法規則的匹配條件通用匹配隱含匹配顯式匹配 四、總結 在網絡安全的世界里&#xf…

XRP對接文檔

XRP對接文檔 技術預研 參考文檔 官方文檔: https://xrpl.org/list-xrp-in-your-exchange.html 官方文檔: https://xrpl.org/list-xrp-as-an-exchange.html#flow-of-funds 交易所對接XRP(內容齊全, 很推薦) https://blog.csdn.net/weixin_40396076/article/details/10020207…

基于51單片機的籃球計時器Proteus仿真

文章目錄 一、籃球計時器1.題目要求2.思路3.仿真圖3.1 未仿真時3.2 仿真開始3.3 A隊進分3.4 B隊進分3.5 比賽結束 4.仿真程序4.1 主函數4.2 時間顯示4.3 比分顯示4.4 按鍵掃描 二、總結 一、籃球計時器 1.題目要求 以51單片機為核心&#xff0c;設計并制作籃球計時器 基本功…

代碼托管平臺詳解與比較

1. Gitee 1.1 平臺簡介 Gitee是中國本土的一個代碼托管平臺&#xff0c;類似于GitHub。它提供了版本控制、項目管理和代碼托管等服務&#xff0c;特別適合中國的開發者和企業。 1.2 主要特點 1. 本地化支持&#xff1a;Gitee提供中文界面和文檔&#xff0c;適合中國開發者使用…

電子游戲 - 星際爭霸技術提高

提高《星際爭霸》的勝率需要綜合考慮多方面的因素&#xff0c;包括宏觀管理、微操技巧、策略制定和游戲意識。以下是一些具體的建議&#xff0c;可以幫助你打好《星際爭霸》并提高勝率&#xff1a; 1. 加強資源管理和經濟發展&#xff08;Macro&#xff09; * 快速擴張&#x…

python實現符文加、解密

在歷史悠久的加密技術中&#xff0c;愷撒密碼以其簡單卻有效的原理聞名。通過固定的字母位移&#xff0c;明文可以被轉換成密文&#xff0c;而解密則是逆向操作。這種技術不僅適用于英文字母&#xff0c;還可以擴展到其他語言的字符體系&#xff0c;如日語的平假名或漢語的拼音…

醫院管理系統帶萬字文檔醫院預約掛號管理系統基于spingboot和vue的前后端分離java項目java課程設計java畢業設計

文章目錄 倉庫管理系統一、項目演示二、項目介紹三、萬字項目文檔四、部分功能截圖五、部分代碼展示六、底部獲取項目源碼帶萬字文檔&#xff08;9.9&#xffe5;帶走&#xff09; 倉庫管理系統 一、項目演示 醫院管理系統 二、項目介紹 基于springbootvue的前后端分離醫院管…

SOLR數據導入和導出

情景 1、solr中的類型修改導致solr的core無法加載&#xff0c;只能刪除core&#xff0c;重新創建。但是solr中的數據&#xff0c;只能從core心中導出&#xff0c;在導入新建的核心中。 2、試了幾種方案&#xff0c;還是通過第三方freedev / solr-import-export-json的組件更加…

Spring框架(二)——IoC

1、什么是IoC IoC—Inverse of Control&#xff0c;控制反轉&#xff0c;將對象的創建權力反轉給Spring框架控制反轉是為了降低程序耦合度&#xff0c;提高程序擴展力&#xff0c;達到OCP原則&#xff0c;達到DIP原則 OCP開閉原則&#xff1a;在軟件開發過程中應當對擴展開放&…

跨阻放大器

#創作靈感# 最近涉及到微電流的監測項目&#xff0c;而里面的核心就是跨阻放大器&#xff0c;所以這里做一個簡單的介紹&#xff0c;后續等項目完成了&#xff0c;再做一個實例的介紹。 #正文# 跨阻放大器&#xff08;Transimpedance Amplifier, TIA&#xff09;是一種將輸入電…

Milvus Cloud集成 DSPy:搭建高效 RAG Pipeline

引言 大語言模型(LLM)為行業帶來變革,具備強大的生成能力,在與知識庫和檢索器等工具相結合時,能夠高效推動聊天機器人和 Agent 等高級生成式 AI(GenAI)應用的發展。與 LLMs 互動的過程中,最核心的部分是提示(prompt)。Prompt 是指用于指導這些模型執行特定任務的命令…

NCBI Virus 幫助文檔

What is NCBI Virus?&#xff08;什么是NCBI病毒&#xff09; 主要功能&#xff1a; Compare your sequence to those in the NCBI Virus database using NCBI BLAST algorithm. 使用NCBI BLAST算法將您的序列與NCBI病毒數據庫中的序列進行比較。Search, view and download …

Oracle PL/SQL 教程 第一部分

PL / SQL代表“過程語言擴展到結構化查詢語言”。 SQL用于查詢和更新關系數據庫。 PL / SQL與SQL緊密集成。 PL / SQL是SQL的Oracle過程擴展&#xff0c;是一種便攜式&#xff0c;高性能的事務處理語言。 使用PL / SQL&#xff0c;可以使用所有SQL數據操作&#xff0c;游標…