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项目利用axios请求接口下载excel
Nov 17 Vue.js
vuex页面刷新导致数据丢失的解决方案
Dec 10 Vue.js
Vue组件简易模拟实现购物车
Dec 21 Vue.js
vue中watch的用法汇总
Dec 28 Vue.js
vue中父子组件的参数传递和应用示例
Jan 04 Vue.js
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
Jan 05 Vue.js
详细聊聊vue中组件的props属性
Nov 02 Vue.js
Vue的列表之渲染,排序,过滤详解
Feb 24 Vue.js
Vue如何清空对象
Mar 03 Vue.js
vue实现书本翻页动画效果实例详解
Apr 08 Vue.js
vue实现简易音乐播放器
Aug 14 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
深入phpMyAdmin的安装与配置的详细步骤
2013/05/07 PHP
PHP实现的mongoDB数据库操作类完整实例
2018/04/10 PHP
php微信开发之关注事件
2018/06/14 PHP
Thinkphp集成抖音SDK的实现方法
2020/04/28 PHP
javascript实现的在当前窗口中漂浮框的代码
2010/03/15 Javascript
jQuery实现的立体文字渐变效果
2010/05/17 Javascript
JavaScript 放大镜 移动镜片效果代码
2011/05/09 Javascript
jQuery数据显示插件整合实现代码
2011/10/24 Javascript
javascript学习笔记(九) js对象 设计模式
2012/06/19 Javascript
jquery封装的对话框简单实现
2013/07/21 Javascript
浅析Javascript使用include/require
2013/11/13 Javascript
基于JavaScript制作霓虹灯文字 代码 特效
2015/09/01 Javascript
jQuery仿京东商城楼梯式导航定位菜单
2016/07/25 Javascript
Angular directive递归实现目录树结构代码实例
2017/05/05 Javascript
配置nodejs环境的方法
2017/05/13 NodeJs
ES6 Generator函数的应用实例分析
2019/06/26 Javascript
jquery实现的分页显示功能示例
2019/08/23 jQuery
javascript实现支付宝滑块验证码效果
2020/07/24 Javascript
解决vue props传Array/Object类型值,子组件报错的情况
2020/11/07 Javascript
[02:41]2015国际邀请赛中国区预选赛观战指南
2015/05/20 DOTA
python笔记(2)
2012/10/24 Python
Python with的用法
2014/08/22 Python
Python开发之快速搭建自动回复微信公众号功能
2016/04/22 Python
理论讲解python多进程并发编程
2018/02/09 Python
Python实现求两个数组交集的方法示例
2019/02/23 Python
详解使用python绘制混淆矩阵(confusion_matrix)
2019/07/14 Python
利用Python实现kNN算法的代码
2019/08/16 Python
pycharm工具连接mysql数据库失败问题
2020/04/01 Python
numpy实现RNN原理实现
2021/03/02 Python
css3 transform 3d 使用css3创建动态3d立方体(html5实践)
2013/01/06 HTML / CSS
Mankind西班牙男士护肤品网站:购买皮肤护理、护发和剃须
2017/04/27 全球购物
英国最大的女士服装零售商:Bonmarché
2017/08/17 全球购物
波兰办公用品和学校用品在线商店:Dlabiura24.pl
2020/11/18 全球购物
幼儿园儿童节主持词
2014/03/21 职场文书
大学生创业计划书怎么写
2014/09/15 职场文书
税务干部群众路线教育实践活动自我剖析材料
2014/09/21 职场文书