ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Vue中图片的加载方式

2022-03-27 13:33:37  阅读:137  来源: 互联网

标签:Vue assets require jpg banner1 加载 data 图片


一、前言

VUE项目中图片的加载是必须的,那么vue中图片的加载方式有哪些呢,今天博主就抽点时间来为大家大概地捋一捋。

二、图片的加载方法

1、在本地加载图片(静态加载)

  • 图片存放assets文件夹中的img文件下

  • 图片的加载配置方式

    方式一:使用import方式导入,然后使用v-for进行遍历

    <template>
    	<el-carousel
          :interval="4000"
          type="card"
          height="200px"
          indicator-position="none">
          <el-carousel-item v-for="item in imgList" :key="item">
            <img :src="item" />
          </el-carousel-item>
       	 </el-carousel>
    	</template>
    <script>
        import banner1 from "@/assets/img/banner1.jpg";
    	import banner1 from "@/assets/img/banner2.jpg";
    	import banner1 from "@/assets/img/banner3.jpg";
    	export default{
            data(){
                return{
                    imgList:[banner1,banner2,banner3],
                }
            }
        }
    </script>
    

    方式二、使用require方式导入,然后使用v-for进行遍历

    <template>
    	<el-carousel
          :interval="4000"
          type="card"
          height="200px"
          indicator-position="none">
          <el-carousel-item v-for="item in imgList" :key="item">
            <img :src="item" />
          </el-carousel-item>
       	 </el-carousel>
    	</template>
    <script>
    	export default{
            data(){
                return{
                    imgList:[
                         require("@/assets/img1/banner1.jpg"),
            			require("@/assets/img1/banner2.jpg"),
            			require("@/assets/img1/banner3.jpg"),
                    ],
                }
            }
        }
    </script>
    
  • 注:这里推荐使用方式二,因为我们VUE文件在后期打包的时候是通过webpack解析的,它会把我们当前的地址解析为字符串,使得浏览器是无法拿到图片的实际地址的,使用require直接以变量的方式赋值给浏览器。更多关于require的使用可以去看看这篇Vue中import和require的对比博文。

2、动态加载图片

  • 配置文档build/webpack.base.conf.js

    {
      test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
      loader: 'url-loader',
      exclude: [resolve('src/icons')],
      options: {
       limit: 10000,
       name: utils.assetsPath('images/[name].[hash:7].[ext]')
      }
      }
    
  • 请求数据

    created() {
     const that = this
     this.request({
      url: '/sysInfoFront/list',
      method: 'get'
     }).then(function(res) {
      const resData = res.data
      if (resData.code === 100) {
      const avatear = resData.data.avater
      resData.data.avatar = avatear
      that.formData = resData.data
      }
     })
     },
    
以上内容就是vue中图片的请求方式了,如果有哪些不足的地方希望小伙伴们多提提提意见,大家共同进步!!

标签:Vue,assets,require,jpg,banner1,加载,data,图片
来源: https://www.cnblogs.com/cyy22321-blog/p/16062581.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有