Hor*_*zon 5 javascript webpack vue.js nuxt.js vuetify.js
我正在使用 Nuxt.js + Vuetify,但图像无法加载到我的下一页文件中。例如,在我的 中./pages/browse/index.vue,我有一个像这样的 vuetify 图像标签:
<v-img
src="~/assets/img/test.png"
style="width:300px"
contain
></v-img>
Run Code Online (Sandbox Code Playgroud)
图像位于assets/img/test.png,但是,每当我启动 Nuxt 服务器时,图像都不会显示,下面是从 Chrome 开发工具复制的 div 元素:
<div class="v-image__image v-image__image--contain" style="background-image: url("http://localhost:3333/browse/~/assets/img/test.png"); background-position: center center;"></div>
Run Code Online (Sandbox Code Playgroud)
图像仅在我不使用 Vuetify 图像组件时才有效:
<img
src="~/assets/img/test.png"
style="width:300px"
/>
Run Code Online (Sandbox Code Playgroud)
Ane*_*eed 13
考虑在static文件夹下添加图像。assets文件夹用于存放需要 webpack 解析的 css/sass/scss 文件。是的,您可以添加小图像assets,然后在 webpack 解析时将其转换为 base64。但是这些图像可以只使用<img />标签而不是通过<v-img />vuetify 的组件加载到应用程序上。
我的理解是<img />可以采用 base64 字符串,然后它会加载相应的图像,但<v-img />它期望src是图像的 URL。当你给一个 base64 时,繁荣,它不会加载任何东西!!!
使用static文件夹
--static
--img
Run Code Online (Sandbox Code Playgroud)
然后您可以使用从应用程序的任何位置访问图像
<v-img src="img/test.png"/>
Run Code Online (Sandbox Code Playgroud)
你在使用 Nuxt 2.0 吗?如果是这样,请注意此处 webpack 部分中的警告:
警告:从 Nuxt 2.0 开始, ~/ 别名将无法在您的 CSS 文件中正确解析。您必须在 url CSS 引用中使用 ~assets(不带斜杠)或 @ 别名,即 background: url("~assets/banner.svg")
| 归档时间: |
|
| 查看次数: |
5233 次 |
| 最近记录: |