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如何循环提取对象数组中的值
Nov 18 Vue.js
vue从后台渲染文章列表以及根据id跳转文章详情详解
Dec 14 Vue.js
vue实现树状表格效果
Dec 29 Vue.js
vue+element UI实现树形表格
Dec 29 Vue.js
如何使用RoughViz可视化Vue.js中的草绘图表
Jan 30 Vue.js
vue 动态添加的路由页面刷新时失效的原因及解决方案
Feb 26 Vue.js
vue使用v-model进行跨组件绑定的基本实现方法
Apr 28 Vue.js
Vue vee-validate插件的简单使用
Jun 22 Vue.js
vue实现可以快进后退的跑马灯组件
Apr 08 Vue.js
如何优化vue打包文件过大
Apr 13 Vue.js
Vue2项目中对百度地图的封装使用详解
Jun 16 Vue.js
vue el-table实现递归嵌套的示例代码
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
咖啡豆的最常见发酵处理方法,详细了解一下
2021/03/03 冲泡冲煮
PHP在字符断点处截断文字的实现代码
2011/04/21 PHP
基于PHP的cURL快速入门教程 (小偷采集程序)
2011/06/02 PHP
PHP设置一边执行一边输出结果的代码
2013/09/30 PHP
JS自动缩小超出大小的图片
2012/10/12 Javascript
jquery.boxy弹出框(后隔N秒后自动隐藏/自动跳转)
2013/01/15 Javascript
js获取日期:昨天今天和明天、后天
2014/06/11 Javascript
jQuery文字提示与图片提示效果实现方法
2016/07/04 Javascript
Javascript 判断两个IP是否在同一网段实例代码
2016/11/28 Javascript
JS常用知识点整理
2017/01/21 Javascript
MVVM框架下实现分页功能示例
2018/06/14 Javascript
Vue实现按钮旋转和移动位置的实例代码
2018/08/09 Javascript
vue中进入详情页记住滚动位置的方法(keep-alive)
2018/09/21 Javascript
个人小程序接入支付解决方案
2019/05/23 Javascript
解决vue组件中click事件失效的问题
2019/11/09 Javascript
jquery将信息遍历到界面上实例代码
2020/01/21 jQuery
Vue路由守卫及页面登录权限控制的设置方法(两种)
2020/03/31 Javascript
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:EE凭借法力虚空拿下4杀
2017/03/30 DOTA
Python解析网页源代码中的115网盘链接实例
2014/09/30 Python
在Python的Django框架中为代码添加注释的方法
2015/07/16 Python
Python数据结构之栈、队列及二叉树定义与用法浅析
2018/12/27 Python
Python如何使用函数做字典的值
2019/11/30 Python
PyCharm永久激活方式(推荐)
2020/09/22 Python
pyqt5 textEdit、lineEdit操作的示例代码
2020/08/12 Python
套娃式文件夹如何通过Python批量处理
2020/08/23 Python
Ivory Isle Designs美国/加拿大:婚礼和活动文具公司
2018/08/21 全球购物
最新英语专业学生求职信范文
2013/09/21 职场文书
合伙经营协议书
2014/04/18 职场文书
社区服务活动总结
2014/05/07 职场文书
企业人事任命书
2014/06/05 职场文书
学校感恩节活动策划方案
2014/10/06 职场文书
公司承诺函范文
2015/01/21 职场文书
教师考核鉴定意见
2015/06/05 职场文书
Oracle 数据仓库ETL技术之多表插入语句的示例详解
2021/04/12 Oracle
Pyhton模块和包相关知识总结
2021/05/12 Python
Golang 对es的操作实例
2022/04/20 Golang