Vue.js Vue加载程序未渲染图像资源
有人知道为什么我的Vue应用程序不呈现任何放置在src/assets下的图像吗 我有以下引导Vue snip:Vue.js Vue加载程序未渲染图像资源,vue.js,webpack,bootstrap-vue,vue-loader,Vue.js,Webpack,Bootstrap Vue,Vue Loader,有人知道为什么我的Vue应用程序不呈现任何放置在src/assets下的图像吗 我有以下引导Vue snip: <b-col md="6" class="d-flex flex-column justify-content-center"> <b-img center src="./growth-labs-logo.png" alt="Growth Labs logo" width="
<b-col md="6" class="d-flex flex-column justify-content-center">
<b-img center src="./growth-labs-logo.png" alt="Growth Labs logo" width="300px"></b-img>
</b-col>
以下是我的vue.config.js:
const path = require('path')
const PrerenderSPAPlugin = require('prerender-spa-plugin')
module.exports = {
css: {
loaderOptions: {
scss: {
additionalData: `@import "@/styles/_variables.scss"; @import "@/styles/app.scss"; @import "@/styles/_typography.scss";`
}
}
},
configureWebpack: () => {
if (process.env.NODE_ENV !== 'production') return;
return {
plugins: [
new PrerenderSPAPlugin(
// Absolute path to compiled SPA
path.resolve(__dirname, 'dist'),
// List of routes to prerender
[ '/'],
{
// options
}
)
]
}
},
chainWebpack: config => {
config.module
.rule('vue')
.use('vue-loader')
.loader('vue-loader')
.tap(options => {
options.transformAssetUrls = {
img: 'src',
image: 'xlink:href',
'b-avatar': 'src',
'b-img': 'src',
'b-img-lazy': ['src', 'blank-src'],
'b-card': 'img-src',
'b-card-img': 'src',
'b-card-img-lazy': ['src', 'blank-src'],
'b-carousel-slide': 'img-src',
'b-embed': 'src'
}
return options
})
}
};
你试过
src=“@/assets/growth labs logo.png”
?哇!这解决了我的问题-非常感谢!我一直认为我需要使用“/growth labs.logo.png”指令。你知道在什么情况下使用这个吗?给你一本好书。:-)你好,Yom,非常感谢分享。
const path = require('path')
const PrerenderSPAPlugin = require('prerender-spa-plugin')
module.exports = {
css: {
loaderOptions: {
scss: {
additionalData: `@import "@/styles/_variables.scss"; @import "@/styles/app.scss"; @import "@/styles/_typography.scss";`
}
}
},
configureWebpack: () => {
if (process.env.NODE_ENV !== 'production') return;
return {
plugins: [
new PrerenderSPAPlugin(
// Absolute path to compiled SPA
path.resolve(__dirname, 'dist'),
// List of routes to prerender
[ '/'],
{
// options
}
)
]
}
},
chainWebpack: config => {
config.module
.rule('vue')
.use('vue-loader')
.loader('vue-loader')
.tap(options => {
options.transformAssetUrls = {
img: 'src',
image: 'xlink:href',
'b-avatar': 'src',
'b-img': 'src',
'b-img-lazy': ['src', 'blank-src'],
'b-card': 'img-src',
'b-card-img': 'src',
'b-card-img-lazy': ['src', 'blank-src'],
'b-carousel-slide': 'img-src',
'b-embed': 'src'
}
return options
})
}
};