欢迎来到站圈网!

php远程媒体七牛node摇摇

投稿中心

JavaScript

当前位置: 主页 > Web前端 > JavaScript

Vue一个动态添加background-image的实现

时间:2023-03-13|作者:混血哲谈|点击:

目录

Vue一个动态添加background-image

一开始不知道该怎么弄,后面查了下,应该这样使用

 
                              
                                               

修改头像

                   
 

Vue踩坑background-image路径

在前端开发中,background-image属性非常常见,有很多时候需要使用内联样式来绑定此属性,但是在vue项目中,如果如下面代码填写路径会找不到图片

  • 项目中图片都放在src/img文件夹,img和background-image引用都用相对路径,即../../../这种形式。
  • 在项目打包build设置路径assetsPublicPath:'./',然后哪些没有转成base64的背景图都失效了。

报错如下:404(Not Found)

Vue一个动态添加background-image的实现

 正确的路径应该如下面这样

data() {
	return {
		shouye:'url(' + require('../../assets/images/shouye/index2x.png') + ')',
		fenlei:'url(' + require('../../assets/images/shouye/fenlei2x.png') + ')',
		search:'url(' + require('../../assets/images/shouye/search2x.png') + ')',
		shopcart:'url(' + require('../../assets/images/shouye/gouwuche2x.png') + ')',
		mine:'url(' + require('../../assets/images/shouye/I2x.png') + ')'
	}
},

使用require()方法,require()是node.js方法。

结合实际情况,处理方法如下

img标签:

背景图:

//i标签

扩展:图片格式(base64)

图片的base64编码就是可以将一张图片数据编码成一串字符串,使用该字符串代替图像地址url。

使用base64图片的优点:

  • 减少http请求次数
  • 采用base64的图片随着页面一起下载,因此不会存在跨域请求的问题
  • 没有图片更新要上传图片,因此不会造成清理图片缓存的问题。

使用base64图片的缺点:

  • 增加css文件的大小,比http请求大30%左右
  • 浏览器兼容性,支持ie10及以上
  • 解析css的时间增长

base64图片与csssprites技术

精灵图技术就是将图片合成一个大的图片,将多次图片请求合成一张大的请求,以此来达到减少http请求的次数。

对于base64图片常见误区

base64虽然有优点,但是其缺点也很明显,在使用上存在一些明显的缺陷

  • 使用base64不代表性能优化,使用base64减少了http请求,但是增加了css文件的体积,css文件体积增大意味着CPR的阻塞
  • CPR(Critical Rendering Path,关键渲染路径):当浏览器从服务器接收到一个HTML页面的请求时,到屏幕上渲染出来要经过很多个步骤。浏览器完成这一系列的运行,或者说渲染出来我们常常称之为“关键渲染路径”。
  • 图片不会导致关键路径的阻塞,而转换为base64后大大增加了css文件的体积,css文件的体积直接影响渲染,导致空白屏幕时间增长,html和css会阻塞渲染,而图片不会阻塞渲染。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持站圈网。

版权声明:本文内容由小编收集网络,均来自网络用户自发贡献,版权归原作者所有,Web前端、电脑编程学习类网站不拥有其著作权,亦不承担相应法律责任。具体规则请查看《Web前端、电脑编程学习类网站用户服务协议》和《Web前端、电脑编程学习类网站知识产权保护指引》。如果您发现本站中有涉嫌抄袭的内容,填写联系本站管理员,一经查实,管理员将立刻删除涉嫌侵权内容。

上一篇:Vue拖拽排序组件Vue-Slicksort解读

下一篇:react跳转后路由变了页面没刷新的解决

本文标题:Vue一个动态添加background-image的实现

本文地址:https://www.zhano.cn/JavaScript/68777.html

AD300

广告投放 | 联系我们 | 版权申明 | SiteMap

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:15234109 | 邮箱:15234109#qq.com(#换成@)

Copyright © 2019-2022 豫ICP备19001789号