当前位置: 首页 > wzjs >正文

360推广做网站2018十大网络营销案例

360推广做网站,2018十大网络营销案例,宁波网站建设lonoo,常德网站建设多少钱vue Element-ui对图片上传和选用时的比例控制 在后台上传图片和选用已经上传的图片时,往往会因为图片的比例控制不到位导致在客户端渲染时效果差强人意,虽然可以在操作时选择合适的比例上传,但必要的控制还是能完成渲染时良好的体验&#xf…

vue Element-ui对图片上传和选用时的比例控制

在后台上传图片和选用已经上传的图片时,往往会因为图片的比例控制不到位导致在客户端渲染时效果差强人意,虽然可以在操作时选择合适的比例上传,但必要的控制还是能完成渲染时良好的体验,今天就分享一个vue+Element-ui上传图片和选用图片场景时,对图片比例控制的方法。

知识点

关键的判断其实就是利用了js 的new image()对象来完成图片比例的控制的。

这里介绍一下关于new image()用法。
Image 对象是 JS 中的内置对象,它代表嵌入的图像。当我们创建一个 Image 对象时,就相当于给浏览器缓存了一张图片,Image 对象也常用来做预加载图片(也就是将图片预先加载到浏览器中,当浏览图片的时候就能享受到极快的加载速度)。在HTML页面中, 标签每出现一次,也就创建了一个 Image 对象。

var img=new Image();
img.src="img.png";
img.οnlοad=function(){console.log(img.width,img.height);
};

在创建 Image 对象后,如果没有给它的 width 和 height 属性赋值,那它的 width 和 height 的默认值都为0,定义Image对象的src=”xxx.jpg”; 这样做就相当于给浏览器缓存了一张图片,在img的onload事件中,也就是被浏览器解析完成以后,可以获取到该图片的信息。然后,就可以根据宽高信息来做一些判断,以下是实例代码。

上传前控制比例

<el-uploadclass="upload-demo mr10 mb15":action="fileUrl":before-upload="beforeUpload":on-success="handleSuccess":headers="myHeaders":show-file-list="false"multiple><el-button size="small" type="primary">点击上传</el-button>
</el-upload>
<script>
export default{data() {return {myHeaders: { 'X-Token': getToken() },}},computed: {fileUrl() {return SettingMer.https + `/upload/image/${this.tableData.attachment_category_id}/file`;},},methods:{beforeUpload(file){return new Promise((resolve, reject) => {let reader = new FileReader()reader.readAsDataURL(file)reader.onload = () => {let img = new Image()img.src = reader.resultimg.onload = () => {if (img.naturalWidth / img.naturalHeight !== 1) {this.$message.error(`请上传宽高比为1:1的图片!`)return reject(false)} else {return resolve(true)}}}})},// 上传成功handleSuccess(response) {if (response.status === 200) {this.$message.success('上传成功');this.getFileList('');} else {this.$message.error(response.message);}},}
}
</script>

通过封装的组件选用时

getImageSize(url) {//用promise捕捉比例是否合适,不合适返回一个提醒return new Promise((resolve, reject) => {const img = new Image();img.src = url;img.onload = () => {//根据传入的图片url获取宽高比例if (img.width / img.height !== 1) {reject('请选择宽高比为1:1的图片!');} else {resolve(true);}};});
},
modalPicTap(tit, num, i){const _this = this;//封装的图片选择器选择完图片点击确定时的回调this.$modalUpload(function (img){if (tit === '2' && !num){//选用多张时img.forEach((item) => {_this.getImageSize(item).then((res) => {_this.formValidate.slider_image.push(item);}).catch((err) => {this.$message.error(err);});});}if (tit === '1' && num === 'dan') {_this.getImageSize(img[0]).then((res) => {_this.image = img[0];}).catch((err) => {this.$message.error(err);});}}
}

http://www.dtcms.com/wzjs/501231.html

相关文章:

  • wordpress 留言墙插件网站seo入门基础教程
  • .net做网站后台山东seo首页关键词优化
  • 买空间的网站产品运营方案
  • 企业网站建设 全包软文发布门户网站
  • 网站空间后台密码站长统计app软件下载官网
  • c 2015 做网站seo快速排名优化方式
  • 大连开发网站建设搜索引擎免费登录入口
  • 泰安营销网站建设公司seoul是什么品牌
  • 自己做微网站沪指重上3000点
  • 成都建设网站设计天津百度seo推广
  • 彩票网站开发与建设windows优化大师和鲁大师
  • 网站版块建设seo关键词优化策略
  • 表白网站制作教程搜索大全引擎地址
  • 做美女网站犯法吗搜索引擎营销的实现方法有
  • 医院网站做竞价需要注意广告法如何自己做一个软件
  • 好的app设计网站有哪些四年级写一小段新闻
  • 如何制作一个网站做淘宝券seo关键字排名
  • 三级a一级a做爰视频网站亚马逊提升关键词排名的方法
  • 怎么做网站布局东莞网络优化调查公司
  • 网站空间名网络营销平台推广方案
  • 海口网站seoseo关键词排名优化怎么样
  • 温州集团网站建设公司哪里有整站优化
  • 网站建设有哪些软件有哪些做公司网站
  • 网站设计目标上海网站seo外包
  • 做印章网站手机注册网站
  • 深圳北网站建设今日军事新闻
  • 网站建设宗旨网站收录服务
  • 利辛做网站北京seo分析
  • 企业展厅建议做什么厦门seo培训
  • 应聘网站开发题目网站建设规划要点详解