文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
解析 Resolve
配置模块如何解析。比如: import _ from 'lodash'
,其实是加载解析了 lodash.js 文件。此配置就是设置加载和解析的方式。
resolve.alias
创建 import 或 require 的别名,来确保模块引入变得更简单。例如,一些位于 src/ 文件夹下的常用模块:
// webpack.config.js
module.exports = {
mode: 'production',
entry: './src/index.js',
output: {
filename: 'main.[hash].js',
path: path.resolve(__dirname, './dist')
},
+ resolve: {
+ alias: {
+ vue$: path.resolve(__dirname, 'src/lib/vue/dist/vue.esm.js'),
+ '@': path.resolve(__dirname, 'src/')
+ }
+ }
...
}
// index.js
// 在我们的 index.js 文件中,就可以直接 import
import vue from 'vue';
// 等价于
import vue from 'src/lib/vue/dist/vue.esm.js';
resolve.extensions
的应用
自动解析确定的扩展。
// webpack.config.js
module.exports = {
mode: 'production',
entry: './src/index.js',
output: {
filename: 'main.[hash].js',
path: path.resolve(__dirname, './dist')
},
resolve: {
alias: {
vue$: path.resolve(__dirname, 'src/lib/vue/dist/vue.esm.js'),
'@': path.resolve(__dirname, 'src/')
},
+ extensions: [".js", ".vue",".json"] // 默认值: [".js",".json"]
}
...
}
给定对象的键后的末尾添加 $,以表示精准匹配
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论