vue实现在data里引入相对路径


Posted in Vue.js onJune 05, 2022

在data里引入相对路径

问题

在项目的HTML中引入图片的相对路径,这样写是能找到图片显示出来的:

<img src="../../../static/img/step-ongoing.png">

但图片太多感觉太乱了了,想在data中通过变量统一管理。这时发现如果直接在data中这样写图片是找不到的:

<img :src="stepOngoing">

data()  {
    return {
        stepOngoing: '../../../static/img/step-ongoing.png',
    }
}

解决

发现只有这么写才行,require内部引入:

data()  {
    return {
        stepOnGoing: require('../../../static/img/step-ongoing.png'),
    }
}

或者用import 在外部引入:

import stepOnGoing_src from '../../../static/img/step-ongoing.png'

data()  {
	return {
		stepOnGoing: stepOnGoing_src,
	}
}

如何在data中正常引入图片路径

在Vue项目中通过data设置图片路径,然后在template中引入后页面无法显示图片,浏览器控制台报错:

vue实现在data里引入相对路径

刚开始以为是路径出问题了,于是绝对路径、相对路径各种办法试了一遍,发现还是报错,后来才发现这是因为在Vue里动态生成的路径无法被url-loader解析到,

此时有两种解决方法

方法一:直接将你的图片源文件放在项目目录的static文件夹里,然后和正常写图片路径那样写就可以了:

vue实现在data里引入相对路径

vue实现在data里引入相对路径

方法二:通过import的方法将图片源路径引入,如下图所示:

vue实现在data里引入相对路径

vue实现在data里引入相对路径

需要注意的是:在Vue里图片是通过v-bind绑定src属性的,所以template模板上的img标签并不是src="",而是v-bind:src=""或简写为:src="",如果这里写错了,那无论如何都无法正常引入图片。

方法三:采用背景图做法,通过data将图片源路径引入,利用内联样式。

如下代码所示:

        <div :style="imgStyle"></div>
        data () {
             imgStyle: {
                  backgroundImage:`url(${require('@/assets/images/xxx.png')})`
             }
        }

如此也可将图片正常引入项目中并作为背景图使用。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。 


Tags in this post...

Vue.js 相关文章推荐
vue-router定义元信息meta操作
Dec 07 Vue.js
详解Vue的异步更新实现原理
Dec 22 Vue.js
vue导入.md文件的步骤(markdown转HTML)
Dec 31 Vue.js
vue实现一个获取按键展示快捷键效果的Input组件
Jan 13 Vue.js
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
Jan 22 Vue.js
vue完美实现el-table列宽自适应
May 08 Vue.js
Vue通过懒加载提升页面响应速度
May 10 Vue.js
vue+springboot实现登录验证码
May 27 Vue.js
一篇文章告诉你如何实现Vue前端分页和后端分页
Feb 18 Vue.js
vue实现Toast组件轻提示
Apr 10 Vue.js
vue的项目如何打包上线
Apr 13 Vue.js
解决vue自定义组件@click点击失效问题
Apr 30 Vue.js
ant design vue的form表单取值方法
Jun 01 #Vue.js
vue ant design 封装弹窗表单的使用
Jun 01 #Vue.js
vue实现登陆页面开发实践
May 30 #Vue.js
vue router 动态路由清除方式
May 25 #Vue.js
vue如何清除浏览器历史栈
May 25 #Vue.js
vue3不同环境下实现配置代理
May 25 #Vue.js
vue使用element-ui按需引入
May 20 #Vue.js
You might like
php类声明和php类使用方法示例分享
2014/03/29 PHP
php获取URL中带#号等特殊符号参数的解决方法
2014/09/02 PHP
php模仿asp Application对象在线人数统计实现方法
2015/01/04 PHP
PHP实现根据银行卡号判断银行
2015/04/29 PHP
JS 用6N±1法求素数 实例教程
2009/10/20 Javascript
jquery 弹出登录窗口实现代码
2009/12/24 Javascript
基于Jquery的$.cookie()实现跨越页面tabs导航实现代码
2011/03/03 Javascript
Jquery Ajax的Get方式时需要注意URL地方
2011/04/07 Javascript
JavaScript实现两个Table固定表头根据页面大小自行调整
2014/01/03 Javascript
JavaScript将Web页面内容导出到Word及Excel的方法
2015/02/13 Javascript
js点击列表文字对应该行显示背景颜色的实现代码
2015/08/05 Javascript
深入理解Javascript中的自执行匿名函数
2016/06/03 Javascript
AngularJS 所有版本下载地址
2016/09/14 Javascript
jQuery操作DOM_动力节点Java学院整理
2017/07/04 jQuery
微信通过页面(H5)直接打开本地app的解决方法
2017/09/09 Javascript
Element Tooltip 文字提示的使用示例
2020/07/26 Javascript
python机器学习之神经网络(三)
2017/12/20 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
pygame实现俄罗斯方块游戏
2018/06/26 Python
对python条件表达式的四种实现方法小结
2019/01/30 Python
Python实现数据结构线性链表(单链表)算法示例
2019/05/04 Python
python列表生成器迭代器实例解析
2019/12/19 Python
css3过渡_动力节点Java学院整理
2017/07/11 HTML / CSS
美国维生素、补充剂、保健食品购物网站:Vitacost
2016/08/05 全球购物
iHerb香港:维生素、补充剂和天然保健品
2017/08/01 全球购物
顶丰TOPPIK台湾官网:增发纤维假发,告别秃发困扰
2018/06/13 全球购物
C和C++经典笔试题附答案解析
2014/08/18 面试题
新郎父亲婚宴答谢词
2014/01/11 职场文书
儿媳婚宴答谢词
2014/01/14 职场文书
党的群众路线教育实践活动公开承诺书
2014/03/28 职场文书
大学校务公开实施方案
2014/03/31 职场文书
道德大讲堂实施方案
2014/05/14 职场文书
群众路线对照检查材料
2014/09/22 职场文书
2014年文秘工作总结
2014/11/25 职场文书
SQL Server中交叉联接的用法详解
2021/04/22 SQL Server
python基础详解之if循环语句
2021/04/24 Python