javascript - Nuxt.js + vuetify 图像未加载

标签 javascript vue.js webpack vuetify.js nuxt.js

我正在使用 Nuxt.js + Vuetify,但图像无法加载到我的下一页文件中。例如,在我的 ./pages/browse/index.vue ,我有一个像这样的 vuetify 图像标签:

<v-img
  src="~/assets/img/test.png"
  style="width:300px"
  contain
></v-img>

图片位于assets/img/test.png ,但是,每当我启动我的 Nuxt 服务器时,图像都不会显示,下面是从 Chrome 开发工具复制的 div 元素:
<div class="v-image__image v-image__image--contain" style="background-image: url(&quot;http://localhost:3333/browse/~/assets/img/test.png&quot;); background-position: center center;"></div>

该图像仅在我不使用这样的 Vuetify 图像组件时才有效:
<img
  src="~/assets/img/test.png"
  style="width:300px"
/>

最佳答案

考虑在 static 下添加图像文件夹。 assets文件夹存放需要被 webpack 解析的 css/sass/scss 文件。是的,您可以将小图像添加到 assets然后在 webpack 解析时将其转换为 base64。但是这些图像可以仅使用 <img /> 加载到应用程序上。标记而不是通过 <v-img /> Vuetify 的组成部分。

我的理解是<img />可以取一个base64字符串,然后它会加载相应的图像,但在<v-img />期待src成为图像的 URL。当你给一个base64时,繁荣,它不会加载任何东西!!!

使用static文件夹

--static
  --img

然后您可以使用从应用程序的任何位置访问图像
<v-img src="img/test.png"/>

关于javascript - Nuxt.js + vuetify 图像未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61181593/

相关文章:

Vue.js this.$refs 由于 v-if 为空

vue.js - 如何使用 Vuetify 网格系统循环显示卡片组件?

webpack - 使用 webpack 插件更改源代码

javascript - Webpack 2 背景图像相对路径不起作用

javascript - HTML5 音频标签无法为 Chrome 和 Safari 中第一个未聚焦的选项卡播放声音?

javascript - CSSStyleDeclaration 的 getPropertyValue() 和方括号 [] 之间有区别吗?

javascript - MQTT可以直接将音频流传输到Web客户端吗?

javascript - 饼图内有文字的圆环图也向下

vue.js - Router beforeEach guard 在 Vue created() 中加载状态之前执行

webpack - HtmlWebpackPlugin 对 webpack dev server 的影响