<template>
<div class="uploadOutter">
<slot>
<div class="uploadInner" @click="$refs.file.click();">
<div class="imgBox" v-if="value&&multiple==false">
<img :src="value" alt class="img" title="图片" />
<div class="close" @click.stop="closeHansle">
<van-icon name="cross" />
</div>
</div>
<img v-else :src="jia" alt class="tjimg" title="图片" />
</div>
</slot>
<input @change="beforeRead" style="display:none;" ref="file" type="file" accept="image/*" capture="camera">
</div>
</template>
<script>
import lrz from "lrz";
export default {
props:{
multiple:{
default:false
},
value:{
default:''
},
},
data () {
return {
jia: require("@/assets/images/jia.png"),
}
},
components: {},
methods: {
//上传文件
beforeRead(e) {
console.log(e)
if(!e.target.files[0]){
return
}
this.$toast.loading({duration:0,forbidClick:true})
lrz(URL.createObjectURL(e.target.files[0], { quality: 0 })).then(rst => {
this.loadHandle(rst.base64)
});
},
loadHandle(file){
let formData = new FormData()
formData.append('imgStr',file)
this.$http({
url:'文件上传接口地址',
method:'post',
data:formData
}).then(({data:{code,data,message}})=>{
if(code=='0000'){
if(this.multiple){
let value = this.value.split(',').filter(e=>e)
value.push(message)
this.$emit('input',value.join(','))
} else {
this.$emit('input',message)
}
this.$emit('change',message)
this.$toast({message:'上传成功!'})
} else {
this.$toast.fail(message)
}
},err=>{})
},
closeHansle(){
this.$emit('input','')
},
}
}
</script>
<style lang="scss" scoped>
.uploadOutter{
width: 101px;
height: 84px;
}
.uploadInner{
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
border: dashed 2px #dce8fa;
border-radius: 5px;
width: 100%;
height: 100%;
.tjimg {
width: 26px;
height: 26px;
margin-top: 10px;
}
.imgBox{
width: 100%;
height: 100%;
position:relative;
.img{
width: 100%;
height: 100%;
}
.close{
position:absolute;
right:0;
top:0;
width:20px;
height:20px;
line-height:30px;
background:rgba(0,0,0,0.5);
color:#fff;
text-align:center;
}
}
}
</style>
相关推荐
lrz图片压缩插件
适用于WebApp,后台开发
vue使用lrz进行压缩图片
在vue中使用lrz去压缩图片 lrz是一款压缩图片成base64的插件,兼容IE10以上及大部分非IE浏览器(chrome、微信什么的) 但是lrz团队已经放弃维护了,所以使用的时候需要谨慎 使用的时候注意,有可能会和你本身代码的插件进行冲突,我遇到报错,但是怎么都解决不了,后来排查到我的项目环境有问题,然后重置之前的环境,再进行使用的时候就正常了,具体是插件冲突还是什么情况,暂时还没找到具体的原因! 下包: 通过npm或者bower方式进行下载 npm i lrz(推荐) bower install l
js使用lrz压缩图片,上传七牛
使用js插件lrz压缩图片,然后调用七牛上传接口,上传图片到七牛服务器
vue项目压缩图片
第一步: 执行命令: cnpm i lrz -S 第二步: 在main.js中引入: import lrz from 'lrz' 第三步: 使用函数:返回结果是一个promise对象。 lrz( file, [ options ] ) .then(function(rst) { ...
lrz.mobile.min.js 压缩图片(亲测,保证正确)
支持图片压缩,支持微信浏览器,Android及IOS,亲测请大家放心。
基于vue+axios+lrz.js微信端图片压缩上传方法
业务场景 微信端项目是基于Vux + Axios构建的,关于图片上传的业务场景有以下几点需求: 1、单张图片上传(如个人头像,实名认证等业务) 2、多张图片上传(如某类工单记录) 3、上传图片时期望能按指定尺寸压缩处理 4、上传图片可以从相册中选择或者直接拍照 遇到的坑 采用微信JSSDK上传图片 在之前开发的项目中(mui + jquery),有使用过微信JSSDK的接口上传图片,本想应该能快速迁移至此项目。事实证明编程没有简单的事: 1、按指定尺寸压缩图片 JSSDK提供的接口wx.chooseImage 是不能指定图片压缩尺寸的,只能在后端的接口通过localId获取图片时,再转换
vue lrz图片压缩插件
vue lrz图片压缩插件安装引入使用参考网站 安装 npm i lrz -S 引入 // main.js 中引入 import lrz from 'lrz' 使用 methods: { afterRead(file) {// 选中上传图片时触发 let that = this; lrz(file.file).then(rst => { let base64 = th...
跟着团子学SAP PS:BOM和项目结构的联动-BOM Transfer CN33
关于项目中的物料组件挂接你需要了解的一点功能
vue中使用lrz上传图片——身份认证
ps: 最近有点忙。今天抽时间记录下, 项目中应用到: 身份认证, 使用 lrz 插件上传图片。 写的不好,欢迎各位指点,谢谢。 文章目录效果图引入lrz文件初始化判断展示审核未通过原因及重选解决上传图片安卓与IOS兼容问题选择身份证图片上传图片templatescss样式 效果图 引入lrz文件 /* 引入外部上传压缩图片js 第一:在webpack.base.conf.js的m...
【深度排查】VScode 远程 SSH 连接失败:从网络握手到服务部署的全链路诊断指南
本文详细解析了VScode远程SSH连接失败的常见原因及解决方案,从基础网络排查到SSH服务配置,再到VScode特有的问题处理。特别针对Ubuntu和TrueNAS系统提供了具体配置建议,帮助开发者快速解决'Could not establish connection'等连接问题,提升远程开发效率。
Couldn‘t find device with uuid 恢复LVM元数据 linux
Couldn't find device with uuid 恢复LVM元数据 linux欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使
Vue.js 2.0 移动端拍照压缩图片预览及上传 的全部源代码 lrz自己安装 npm i lrz --save -g 自己引入vux的 confirmplugin
<template> <div> <h5 class="content-header"> </h5> <div class="image-list"> <div style="text-align:center" ref="divGenres" clas
避坑指南:STM32H7不同DMA控制器(MDMA/DMA2D/BDMA)到底该用哪个?
本文深入解析STM32H7系列芯片的DMA控制器选型策略,涵盖MDMA、DMA2D、BDMA等不同控制器的架构原理与性能对比。通过实际项目案例,提供高速TCM数据搬运、GUI加速、低功耗传输等场景的选型决策树,并分享性能优化与调试技巧,帮助工程师避开常见陷阱,提升系统效率。
vue中引入常用的js插件npm方法
移动端图片压缩插件localResizeIMG 、介绍: 解决Webapp项目中上传图片时,拍照或者选择的图片太大,导致上传速度缓慢,用户体验差,高并发下,后台处理较大的文件压力大。 为了降低类似问题带来的影响,我们采用Vue2.0压缩图片插件localResizeIMG(lrz),压缩图片。 大体的思路:每次拍照或选择一张图片-然后压缩图片-预览上传。上传图片压缩插件是localR...
yakit 通过codec 解决RSA加密
靶场就不过多叙述,具体的可以看yakit系列的前几篇文章。yakit 热加载进行 RSA 加密如何显示想要的payloads。
交流异步机VVVF变频控制simulink/matlab仿真分析
VVVF,是Variable Voltage and Variable Frequency的缩写, 意为:可变电压、可变频率,也就是变频调速系统。 VVVF控制的逆变器连接电机,通过同时改变频率和电压,达到磁通恒定(可以用反电势/频率近似表征)和控制电机转速(和频率成正比)的目的,所以多应用在变频器中,属于工业自动化领域。
移动端图片压缩上传解决方案
最近做移动端图片上传,发现图片尤其是iPhone拍照的图片都有2M左右,但是实际上项目中用不到这么大,于是想到要用js在前台进行压缩。 解决方案如下: 网上搜了很多效果都不怎么好,这个还行:http://think2011.net/localResizeIMG/test/ 使用可以参考具体文档,我是在Vue环境下,不过不影响使用,直接贴代码了: import croppe...
C++设计模式之观察者模式
观察者模式(Observer Pattern)是一种行为设计模式,它定义了对象之间的一对多依赖关系,当一个对象状态发生变化时,所有依赖于它的对象都会得到通知并自动更新。这种模式通常用于实现分布式事件处理系统,当一个对象(称为“主题”或“发布者”)改变状态时,所有注册的观察者都会收到通知。
Vue.js 2.0 移动端拍照压缩图片预览及上传
Vue.js 2.0 移动端拍照压缩图片预览及上传 2017-03-04 21:55 本站整理 浏览(35) 在学习和使用Vue.js 2.0 的过程中遇到不少不一样的地方,本来移动端开发H5应用,准备将mui框架和Vue.js+vue-router+vuex 全家桶结合起来使用,但是在拍照上传的实现过程中遇到了无法调用plus的H5+接口的问题,所以最后拍照上传功能还是使用inp
LLM 大模型学习必知必会系列(十一):大模型自动评估理论和实战以及大模型评估框架详解
LLM 大模型学习必知必会系列(十一):大模型自动评估理论和实战以及大模型评估框架详解
锂电池充电器电路设计 里面有电路
锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。
移动端 Vue+Vant 的Uploader 实现上传、压缩、旋转图片功能
转:https://www.jb51.net/article/162760.htm
老版QQ原生表情gif动态
这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。
移动端拍照上传图片之后压缩以及图片旋转问题
一、问题 针对旧项目翻新,旧的项目是使用lrz(官网)插件压缩图片,17年的项目了使用原生js写的,要翻成vue+webpack,同样使用lrz压缩图片时在部分小米手机和ios就会出现图片旋转的问题,其实不压缩图片时图片就是旋转的,就想有没有一个压缩组件又可以压缩又可以解决原本图片的旋转问题。 二、解决 最终找到了这个宝藏组件compressorjs,可以兼容安卓和ios解决旋转问题,其实在这之前试了lrz-lw等压缩组件可以解决ios的旋转但是小米手机一直不行。可以使用测试链接来拍照上传看看是否兼容
OV9734 DATASHEET,完整规格书
OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等
Camera2Demo
在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作
vue3+ts H5拍照上传(图片压缩)
1H5拍照上传 + 拍照后图片截取
Vue.js移动端图片压缩插件localResizeIMG
1、介绍: 解决Webapp项目中上传图片时,拍照或者选择的图片太大,导致上传速度缓慢,用户体验差,高并发下,后台处理较大的文件压力大。 为了降低类似问题带来的影响,我们采用Vue2.0压缩图片插件localResizeIMG(lrz),压缩图片。 大体的思路:每次拍照或选择一张图片-然后压缩图片-预览上传。上传图片压缩插件是localResizeIMG , 这个插件的使用说明可以去看...
h5 图片上传 图片预览 使用jquery, 原生js, vue都可
localResizeIMG—lrz本地图片压缩裁剪插件链接: http://www.aijquery.cn/Html/jquerychajian/194.html lrz.all.bundle.js插件 图片上传样式 https://blog.csdn.net/Fiona_lms/article/details/80813112 vue使用exif获取图片旋转,压缩。 https://www.cnblogs.com/maruihua/p/12090196.html ...
6456



被折叠的 条评论
为什么被折叠?



