Gruntjs grunt babel警告绑定&x27;参数';以严格的方式

Gruntjs grunt babel警告绑定&x27;参数';以严格的方式,gruntjs,grunt-babel,Gruntjs,Grunt Babel,当我想用grunt和uglifyjs压缩我的javascript代码时,但uglifyjs不支持es6,所以我使用grunt babel,但我遇到了一些问题,它警告在严格模式下绑定“参数”,所以我编写了一些简单的代码来测试它。在这个文件中,参数只是一个常见的局部变量,不是call(arguments)或apply,我不知道它是如何发生的,也不知道如何修复它。 以下是示例代码: 'use strict'; let a = 1; async function test() { return

当我想用grunt和uglifyjs压缩我的javascript代码时,但uglifyjs不支持es6,所以我使用grunt babel,但我遇到了一些问题,它警告在严格模式下绑定“参数”,所以我编写了一些简单的代码来测试它。在这个文件中,参数只是一个常见的局部变量,不是call(arguments)或apply,我不知道它是如何发生的,也不知道如何修复它。 以下是示例代码:

'use strict';
let a = 1;
async function test() {
    return new Promise(resolve, reject => {
        let b = 1;
        let c = a + b;
        resolve(c);
    })
}

function no(arguments) {
    console.log(arguments);
}
然后是gruntfile.js

module.exports = function(grunt) {  
  require("load-grunt-tasks")(grunt); 
  grunt.initConfig({  
      pkg: grunt.file.readJSON('package.json'),       
      clean: {
        src: 'dist/'
      },
      copy: {
        main: {
          expand: true,
          cwd: 'test',
          src: '**',
          dest: 'dist/',
        },
      },
      babel: {
          options: {
              sourceMap: false,
              presets: ["@babel/preset-env"],
              ignore: ["/node_modules","./resources/vendor/**"],
              plugins: [
                  "@babel/plugin-transform-runtime",
                  ["@babel/plugin-transform-modules-commonjs", { "strictMode": false }]
                ]
          },
          dist: {
              files: [{
                 expand:true,
                 cwd:'test/',
                 src:['**/*.js'],
                 dest:'dist/'
               }] 
          }
      },
      uglify: {  
          options: {
           mangle: true,
           comments: 'some'
          },  
          my_target: {
               files: [{
                 expand:true,
                 cwd:'dist/',
                 src:['**/*.js'],
                 dest:'dist/'
               }] 
          } 
      }
  });  

    grunt.loadNpmTasks('grunt-contrib-copy');
    grunt.loadNpmTasks('grunt-babel');
    grunt.loadNpmTasks('grunt-contrib-uglify'); 
    grunt.loadNpmTasks('grunt-usemin');

    grunt.registerTask('default', ['clean','copy','babel','uglify']);
  }
然后执行咕哝 控制台日志

Warning: F:\project\grunttest\test\test.js: Binding 'arguments' in strict mode (11:12)
我试图配置babel选项
[“@babel/plugin transform modules commonjs”,{“strictMode”:false}]
但它不起作用,我怎样才能修复它?
感谢您在MDN文档的链接中找到:

arguments
是javascript函数中的保留关键字,当您试图将其定义为函数
no
中的内部变量时,它无法正确绑定,因为
arguments
是包含函数所有参数的特殊对象

只需将变量的名称更改为另一个名称即可修复错误