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中echarts的用法及与elementui-select的协同绑定操作
Nov 17 Vue.js
vue-drawer-layout实现手势滑出菜单栏
Nov 19 Vue.js
Vue+element-ui添加自定义右键菜单的方法示例
Dec 08 Vue.js
vue-cli4.0多环境配置变量与模式详解
Dec 30 Vue.js
手写Vue源码之数据劫持示例详解
Jan 04 Vue.js
vue 实现click同时传入事件对象和自定义参数
Jan 29 Vue.js
Vue实现圆环进度条的示例
Feb 06 Vue.js
vue组件的路由高亮问题解决方法
May 11 Vue.js
vue实现可拖拽的dialog弹框
May 13 Vue.js
教你部署vue项目到docker
Apr 05 Vue.js
使用vue判断当前环境是安卓还是IOS
Apr 12 Vue.js
vue/cli 配置动态代理无需重启服务的方法
May 20 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 &amp;&amp; 逻辑与运算符使用说明
2010/03/04 PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
2014/06/12 PHP
PHP return语句另类用法不止是在函数中
2014/09/17 PHP
PHP清除字符串中所有无用标签的方法
2014/12/01 PHP
PHP实现的蚂蚁爬杆路径算法代码
2015/12/03 PHP
js中onload与onunload的使用示例
2013/08/25 Javascript
CSS3实现动态背景登录框的代码
2015/07/28 Javascript
结合代码图文讲解JavaScript中的作用域与作用域链
2016/07/05 Javascript
基于JSON数据格式详解
2017/08/31 Javascript
Angularjs按需查询实例代码
2017/10/30 Javascript
使用express获取微信小程序二维码小记
2019/05/21 Javascript
layui table复选框禁止某几条勾选的实例
2019/09/20 Javascript
jquery制作的移动端购物车效果完整示例
2020/02/24 jQuery
vue-router 控制路由权限的实现
2020/09/24 Javascript
如何使用原生Js实现随机点名详解
2021/01/06 Javascript
python 获取et和excel的版本号
2009/04/09 Python
Python实现把数字转换成中文
2015/06/29 Python
Python使用plotly绘制数据图表的方法
2017/07/18 Python
通过Pandas读取大文件的实例
2018/06/07 Python
Python自动化完成tb喵币任务的操作方法
2019/10/30 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
2019/12/04 Python
Python魔术方法专题
2020/06/19 Python
sqlalchemy实现时间列自动更新教程
2020/09/02 Python
美国专注于健康商品的网站:eVitamins
2017/01/23 全球购物
奥地利汽车配件店:Pkwteile.at
2017/03/10 全球购物
爱尔兰领先的在线体育用品零售商:theGAAstore
2018/04/16 全球购物
英国汽车零件购物网站:GSF Car Parts
2019/05/23 全球购物
预备党员表决心书
2014/03/11 职场文书
总经理秘书岗位职责
2014/03/17 职场文书
借款协议书
2014/09/16 职场文书
处级干部反四风个人对照检查材料思想汇报
2014/09/27 职场文书
党的群众路线教育实践活动查摆剖析材料
2014/10/10 职场文书
党校团干班培训心得体会
2016/01/06 职场文书
2019年中,最受大众欢迎的6本新书
2019/08/07 职场文书
CSS精灵图的原理与使用方法介绍
2022/03/17 HTML / CSS
MySQL串行化隔离级别(间隙锁实现)
2022/06/16 MySQL