如何在 neutrino.js 中禁用 chunkhash?
How to disable chunkhash in neutrino.js?
我正在寻找一种在构建时禁用 neutrino.js 中的 chunkhash 的方法,但没有找到任何相关文档,有人可以帮忙吗?
更新:
在 webpack 中,我可以自定义 output.filename
,在 neutrino.js 中,似乎字符串 "[name].[hash].bundle.js"
已被烘焙,并且无法删除 [hash]
据我所知。
在您的 .neutrinorc.js
文件中,您可以添加一个额外的覆盖函数来更改输出文件名以不包含块哈希(以 neutrino-preset-react
为例:
module.exports = {
use: [
'neutrino-preset-react',
(neutrino) => {
// the original value of filename is "[name].[chunkhash].js"
neutrino.config.output.filename('[name].js');
}
]
};
如果您想根据环境变量更改构建目标:
module.exports = {
use: ['neutrino-preset-react'],
env: {
NEUTRINO_TARGET: {
desktop: {
use: [
(neutrino) => neutrino.config.output.filename('[name].js');
]
},
mobile: {
use: [
(neutrino) => neutrino.config.entry('mobile').add('index.mobile.js');
]
}
}
}
};
然后你可以 运行 Neutrino 两次不同的环境:
NEUTRINO_TARGET=desktop neutrino build
NEUTRINO_TARGET=mobile neutrino build
我正在寻找一种在构建时禁用 neutrino.js 中的 chunkhash 的方法,但没有找到任何相关文档,有人可以帮忙吗?
更新:
在 webpack 中,我可以自定义 output.filename
,在 neutrino.js 中,似乎字符串 "[name].[hash].bundle.js"
已被烘焙,并且无法删除 [hash]
据我所知。
在您的 .neutrinorc.js
文件中,您可以添加一个额外的覆盖函数来更改输出文件名以不包含块哈希(以 neutrino-preset-react
为例:
module.exports = {
use: [
'neutrino-preset-react',
(neutrino) => {
// the original value of filename is "[name].[chunkhash].js"
neutrino.config.output.filename('[name].js');
}
]
};
如果您想根据环境变量更改构建目标:
module.exports = {
use: ['neutrino-preset-react'],
env: {
NEUTRINO_TARGET: {
desktop: {
use: [
(neutrino) => neutrino.config.output.filename('[name].js');
]
},
mobile: {
use: [
(neutrino) => neutrino.config.entry('mobile').add('index.mobile.js');
]
}
}
}
};
然后你可以 运行 Neutrino 两次不同的环境:
NEUTRINO_TARGET=desktop neutrino build
NEUTRINO_TARGET=mobile neutrino build