# webpack 实践(3): 加载静态资源
一个应用必然少不了使用各种图片等静态资源,在 webpack5
之前都是通过 url-loader (opens new window) 和 file-loader (opens new window) 来识别、加载静态资源。
webpack5
内置了 Asset Modules (opens new window),通过 Asset Modules
无需配置额外的 loader
就能在 webpack
中使用静态资源。
新增 assets
目录用来存在静态资源,在里面添加测试用的 logo.png
。
修改 App.vue
,引入图片。
<template>
<div>
<h1>{{ content }}</h1>
<img :src="require('./assets/logo.png')" alt="logo" />
</div>
</template>
<script>
export default {
name: 'App',
data() {
return {
content: 'Hello webpack & vue.'
}
}
}
</script>
修改 webpack.common.js
,添加 Asset Modules
配置。
...,
module.exports = {
...,
module: {
rules: [
...,
{
test: /\.(png|svg|jpg|jpeg|gif)$/i,
type: 'asset'
}
]
},
...,
}
再次执行 build:app
或 dev:app
,图片加载、展示成功。
本文实践代码可从 https://github.com/xuwenchao66/webpack-practice (opens new window) 中查阅。