如何解决Webpack配置中的“ Fallback”规则
是否有一种方法可以为Webpack定义“后备”规则,以便如果.module.rules
中没有其他匹配项,那么将应用此规则?
我曾尝试在最后位置指定一个规则,并使用非常宽松的test:
,但是无论其位置如何,它似乎都具有优先权(首先,最后一个也在oneOf
内尝试)。 >
示例:
module: {
rules: [
{
oneOf: [
{ test: /\.ts$/i,loader: "ts-loader" },{ test: /\.ttf$/i,loader: "url-loader" },{ test: /.+/,loader: "file-loader" }
]
}
]
}
我本来希望通过.ts
加载的不是.ttf
或file-loader
的所有内容,但实际上,似乎它甚至适用于.ts
文件
解决方法
之所以会这样,是因为上一个测试中的正则表达式匹配所有文件扩展名,包括您希望忽略的文件扩展名。
为避免这种情况,您需要从全面测试中过滤掉已知/预期的扩展名。
例如:
module: {
rules: [
{ test: /\.ts$/i,loader: "ts-loader" },{ test: /\.ttf$/i,loader: "url-loader" },{ test: /\.(?!ts|ttf)([\w]+)/i,loader: "file-loader" }
]
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。