• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >vue > Vue中img的src属性绑定与static文件夹实例

Vue中img的src属性绑定与static文件夹实例

作者:almon123 字体:[增加 减小] 来源:互联网 时间:2017-05-30

本文主要包含vue img src,vue.js img src,vue.js v bind:src,vue src,vue.js src等相关知识,almon123 希望在学习及工作中可以帮助到您

不少人在vue的开发中遇到这样一个问题: img的src属性绑定url变量,然而图片加载失败。

大部分的情况中,是开发者使用了错误的写法,例如:

<img src="{{ imgUrl }}"/>
</div>

这样写肯定是不对的,正确的写法应该使用v-bind:

<img v-bind:src="imgUrl"/>
</div>

不过,有时候即使使用了正确的语法,依旧无法显示图片,因为你的imgUrl使用了本地图片的路径。

例如,有下面一个文件结构:


现在,我们要在App.vue里使用位于src/assets/目录下的logo.png图片,于是,我们设:

imgUrl = './assets/logo.png'
</div>

奇怪的事情出现了,图片加载失败。查看网页源代码,发现一个错误:

看这个错误代码,我们发现,网页把根域名作为相对路径的根目录了,然而我们文件的路径是相对于项目文件的根目录的,当然就找不到了。

既然这样,那我们去找build后的dist文件夹。发现文件的结构是这样:

是不是说只要把url改成./static/img/logo.png就可以了呢?依然是不行的。打开img文件夹我们可以发现,所有的文件名后都被添加上了一个随机字符串,原始的文件名已经无法对应了。

那么,到底应该怎么加载本地图片呢?回头看vue-cli的文件结构,发现其中有一个叫做static的文件夹,尝试将logo.png放入这个文件夹,然后修改imgUrl:

imgUrl = '/static/logo.png'
</div>

成功读取到了logo.png. 执行npm run build后查看dist文件,发现logo.png原封不动地放在了根目录下。

原来,之前的目录结构是有问题的,图片一类的静态文件,应该放在这个static文件夹下,这个文件夹下的文件(夹)会按照原本的结构放在网站根目录下。这时我们再去使用/static绝对路径,就可以访问这些静态文件了。

另外,如果说想在不调整目录结构的情况下读取本地图片,还有一个方法,那就是直接传入图片编码。即:

imgUrl = require('./assets/logo.png')
</div>

这样可以读到项目路径下的图片,但是要注意,因为CommonJS只允许使用字符串字面量,所以这种方法的灵活性依旧很差,所以还是推荐将静态文件放入static文件夹下。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

</div>

您可能想查找下面的文章:

  • Vue中img的src属性绑定与static文件夹实例

相关文章

  • 2017-05-30详解Vue 实例中的生命周期钩子
  • 2017-05-30Vue.js结合bootstrap实现分页控件
  • 2017-05-30Vuex2.0+Vue2.0构建备忘录应用实践
  • 2017-05-30深入探讨Vue.js组件和组件通信
  • 2017-05-30vue实现动态数据绑定
  • 2017-05-30Vuejs第十三篇之组件——杂项
  • 2017-05-30详解vue嵌套路由-query传递参数
  • 2017-05-30简单理解Vue条件渲染
  • 2017-05-30vue项目中做编辑功能传递数据时遇到问题的解决方法
  • 2017-05-30利用vue写todolist单页应用

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • VUEJS实战之构建基础并渲染出列表(1)
    • Vue.js:使用Vue-Router 2实现路由功能介绍
    • vue使用watch 观察路由变化,重新获取内容
    • vue-router:嵌套路由的使用方法
    • 最新Vue技术栈开发实战
    • Vue.js路由vue-router使用方法详解
    • 基于vue.js实现图片轮播效果
    • Vue.js每天必学之内部响应式原理探究
    • vue2.0实战之使用vue-cli搭建项目(2)
    • 详解vue-router 2.0 常用基础知识点之router.push()

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有