gpt4 book ai didi

javascript - 如何使用 gulp webpack-stream 生成正确命名的文件?

转载 作者:可可西里 更新时间:2023-11-01 01:50:45 24 4
gpt4 key购买 nike

目前我们正在使用 Webpack 用于我们的模块加载器, Gulp 用于其他一切(sass -> css,以及开发/生产构建过程)

我想将 webpack 的东西打包到 gulp 中,所以我所要做的就是键入 gulp ,它会启动、监视并运行 webpack 以及我们的 gulp 设置要执行的其余操作。

所以我找到了webpack-stream并付诸实现。

gulp.task('webpack', function() {
return gulp.src('entry.js')
.pipe(webpack({
watch: true,
module: {
loaders: [
{ test: /\.css$/, loader: 'style!css' },
],
},
}))
.pipe(gulp.dest('dist/bundle.js'));
});

问题是它为 .js 文件生成了一个随机字符名称,我们应该如何在我们的应用程序中使用它?

From the github repo :

The above will compile src/entry.js into assets with webpack into dist/ with the output filename of [hash].js (webpack generated hash of the build).

如何重命名这些文件?每次我保存编辑时,新的 gulp 任务也会生成一个新文件:

enter image description here

我不能使用 c2212af8f732662acc64.js 我需要将它命名为 bundle.js 或其他正常的名称。

我们的 Webpack 配置:

var webpack = require('webpack');
var PROD = JSON.parse(process.env.PROD_DEV || '0');
// http://stackoverflow.com/questions/25956937/how-to-build-minified-and-uncompressed-bundle-with-webpack

module.exports = {
entry: "./entry.js",
devtool: "source-map",
output: {
devtoolLineToLine: true,
sourceMapFilename: "app/assets/js/bundle.js.map",
pathinfo: true,
path: __dirname,
filename: PROD ? "app/assets/js/bundle.min.js" : "app/assets/js/bundle.js"
},
module: {
loaders: [
{ test: /\.css$/, loader: "style!css" }
]
},
plugins: PROD ? [
new webpack.optimize.UglifyJsPlugin({minimize: true})
] : []
};

最佳答案

关于他的 webpack.config.js 是什么样子,Leon Gaban 的回答有评论。我没有在评论中回答这个问题,而是在此处提供它以使其格式更好。

根据 webpack-stream 的文档, "您可以使用第一个参数传递 webpack 选项"...

因此,我执行了以下操作以强制 webpack 每次都使用相同的输出名称(对我来说,我使用的是 bundle.js):

gulp.task('webpack', ['babelify'],
() => {
return gulp.src('Scripts/index-app.js')
.pipe(webpack({output: {filename: 'bundle.js'} }))
.pipe(debug({ title: 'webpack:' }))
.pipe(gulp.dest('Scripts/'));

});

关键是 webpack() 中的选项,它们是:

{output: {filename: 'bundle.js'} }

关于javascript - 如何使用 gulp webpack-stream 生成正确命名的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36074980/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com