如何解决Webpack不会排除在排除数组中指定的文件
我有一个很大的配置文件,要从构建中排除,我想以两个文件结束:
--bundle.js
--config.js
我尝试了多种方法:
排除文件:
rules: [
{
test: /\.js$/,exclude: [/node_modules/,/config\.js/]
}
]
或具有绝对路径:
rules: [
{
test: /\.js$/,path.join(__dirname,"config.js")]
}
]
rules: [
{
test: /\.js$/,/config/]
}
]
但是它总是包含在最终版本中。
现在(由于我在其他问题中看到过)而提起这个文件可能很重要,因为我的一个应用程序文件中都需要此文件。 config.js文件包含一个大的javascript对象,它需要config对象需要的其他文件中的其他类(在捆绑软件的其他位置及其所有配置逻辑中均未使用)。我也尝试过也排除该目录,但这也不起作用。
我猜我想做的只是让捆绑包保留“ config.js”,这样它就可以作为一个补充文件,以便在其余的时候仍然可以使用它。文件是捆绑在一起的。
编辑:现在,我正在考虑它,我知道默认情况下不包括.json文件,如果我用fs读取它而不是需要config.js文件怎么办?所以它仍然是必需的,但不需要“ require”吗?
解决方法
我能够通过使用readFileSync和eval来做到这一点:
const jsFile = eval(fs.readFileSync("./jsFile.js","utf-8"));
请记住,如果您需要该文件中的其他文件,则路径会更改!它们将不相对于jsFile.js
,但相对于读取jsFile.js
此后,您只需将所有文件包含在相对于捆绑包的相同层次结构中,就如同捆绑捆绑包之前在项目中一样。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。