Home  >  Article  >  Web Front-end  >  How to reference local static images in vue

How to reference local static images in vue

php中世界最好的语言
php中世界最好的语言Original
2018-04-11 17:13:5011331browse

This time I will show you how to reference local static images in vue. What are the precautions for referencing local static images in vue. The following is a practical case, let's take a look.

Write picture description here

Requirement: How can index.vue in components take out pictures from assets.

1. Write the path directly in the img tag:

<img src="../assets/a1.png" class="" width="100%"/>

2. Use an array to save and recycle the output:

<el-carousel-item v-for="item in carouselData" :key="item.id">
    <img :src="item.url" class="carouselImg"/>
    <span class="carouselSpan">{{ item.title }}</span>
</el-carousel-item>
data: () => ({
   carouselData:[
   {url:require('../assets/a1.png'),title:'你看我叼吗1',id:1},
   {url:require('../assets/a3.png'),title:'你看我叼吗2',id:2},
   {url:require('../assets/a4.png'),title:'你看我叼吗3',id:3}
   ]
  }),

The effect is as follows:

The complete code in index.vue is this:


<script>
  import footer1 from '../components/public/footer'
  export default {
  data: () => ({
   carouselData:[
   {url:require('../assets/a1.png'),title:'你看我叼吗1',id:1},
   {url:require('../assets/a3.png'),title:'你看我叼吗2',id:2},
   {url:require('../assets/a4.png'),title:'你看我叼吗3',id:3}
   ]
  }),
  components:{
      footer1
    },
 }
</script>

PS: Let’s take a look at the image reference path in Vue.js

When we reference images in the Vue.js project, there are the following situations regarding the image path:

Use one

We define the image path in data

imgUrl:'../assets/logo.png'

Then, in the template

<<span class="hljs-title" style="box-sizing: border-box; color: rgb(0, 0, 136);">img src="
{{imgUrl}}">

This is the wrong way to write it. We should use v-bind to bind the srcs attribute of the image

:src="imgUrl">

Or

<span class="hljs-title" style="box-sizing: border-box; color: rgb(0, 0, 136);">img src="../assets/logo.png">

This method refers to the path according to normal HTML syntax and can be packaged by webpack when placed in the template.

Use two

When we need to write the image path in the js code, if we write

in the data imgUrl:'../assets/logo.png'

At this time, webpack will only treat it as a string and cannot find the image address. At this time, we can use import to introduce the image path:

:src="avatar" />
import avatar from '@/assets/logo.png'

Define

in data avatar: avatar

Scenario 3

We can also put the image in the outer static folder, and then define it in data:

imgUrl : '../../static/logo.png'
:src="imgUrl" />

The above is how we reference the image path in Vue.js.

I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the php Chinese website!

Recommended reading:

How to deal with Vue refreshing the display 404 after packaging the project

vue uses the xe-utils function Detailed explanation of library steps

The above is the detailed content of How to reference local static images in vue. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn