Javascript 如何使用webpack预编输出文件?

Javascript 如何使用webpack预编输出文件?,javascript,node.js,webpack,eslint,Javascript,Node.js,Webpack,Eslint,我正在与webpack合作,将Libraries构建成saleforce dx项目 但当我推动github时,我有一个eslint验证 此验证失败,因为它尝试检查网页包输出的有效性 我正在尝试使用/*eslint disable*/在我按下时禁用eslint来预先设置输出文件 所以我试着: rules: [ { loader: '@shoutem/webpack-prepend-append', query: { prepend:

我正在与webpack合作,将Libraries构建成saleforce dx项目

但当我推动github时,我有一个eslint验证

此验证失败,因为它尝试检查网页包输出的有效性

我正在尝试使用
/*eslint disable*/
在我按下时禁用eslint来预先设置输出文件

所以我试着:

rules: [
      {
        loader: '@shoutem/webpack-prepend-append',
        query: {
          prepend: '/* eslint-disable */'
        }
      }
    ]
但是注释没有显示在输出文件的顶部。我认为它是输入文件的前置


如何使用webpack预处理输出文件?

您可以使用
BannerPlugin
插件在每个生成的区块顶部添加一个横幅:

例如,您可以使用以下选项:

new webpack.BannerPlugin({
  banner: '/* eslint-disable */'
  raw: true
});
``

我找不到任何方法在我的网页配置中放置有效的eslint注释

所以我使用nodejs脚本

//nodeScript.js
var path=require('path');
var fs=需要('fs');
var pathDefault='{build path}';
var jsFilesName=['build1.js','build2.js'];
forEach(函数(文件){
试一试{
var contents=fs.readFileSync(
join(uu dirname,pathDefault,file+'.js'),
“utf8”
);//将内容文件复制到变量中
fs.writeFileSync(
join(uu dirname,pathDefault,file+'.js'),
'/*eslint禁用*/\r\n'+内容
);//使用注释和内容的串联重写内容文件
log('-'+file+'=>Done');
}捕捉(错误){
log('-'+file+'=>KO');
如果(错误)抛出错误;
}
});
您可以在Thread/npm构建之后启动此脚本

e、 g


创建文件eslintdisable.sh

echo "/* eslint-disable */" | cat - dist/webpackoutput.js > /tmp/out && mv /tmp/out dist/webpackoutput.js
在上面的代码中,将dist/webpackoutput.js替换为生成webpack输出文件的正确路径

然后在package.json中运行webpack,如下所示

"scripts": {
    "build": "webpack --mode=production && sh ./eslintdisable.sh" }

不幸的是,它需要添加一个
插入注释,并且eslint未被禁用。看起来您需要
原始
选项,然后选择是,但webpack v 4.40会删除注释,如
/*某些文本*/
。因此,当我使用raw选项时,它是添加注释,但在注释中有多个
*
,如:
/***eslint disable*/
"scripts": {
    "build": "webpack --mode=production && sh ./eslintdisable.sh" }