您好,我正在使用uglifyJs缩小我的javascript文件,一次只处理一个文件效果很好,我想要的是将一个名为JS的文件夹中的所有javascript文件缩小到一个名为JSM的文件夹中,很明显,我的JS文件夹中有两个名为test1的文件.js和test2.js和我想对该文件夹运行uglify并生成test1.min.js和test2.JSM文件夹中的min.js,那么有什么方法可以做到这一点吗?命令如下:

uglifyjs -c -m JS/*.js JSM/*.min.js

或者任何能帮我的 idea .

谢谢

推荐答案

我知道这似乎是一个巨大的进步,但我真的建议使用grunt.

这里有一个速成班:

  1. 安装NodeJS
  2. 安装Grunt CLI(只需在控制台/终端中输入):

    npm install -g grunt-cli
    
  3. 在项目的根目录中创建一个简单的package.json文件:

    {
      "name": "my-project-name",
      "version": "1.0.0",
      "devDependencies": {
        "grunt": "~0.4.2",
        "grunt-contrib-uglify": "~0.2.4",
        "grunt-contrib-watch" : "~0.5.3"
      }
    }
    
  4. 一旦你做到了,只需在控制台(在项目的根目录中)输入:npm install即可.

  5. 现在在项目的根目录中创建一个简单的gruntfile.js(它是项目的一种配置):

    module.exports = function (grunt) {
        grunt.initConfig({
    
    
        // define source files and their destinations
        uglify: {
            files: { 
                src: 'js/*.js',  // source files mask
                dest: 'jsm/',    // destination folder
                expand: true,    // allow dynamic building
                flatten: true,   // remove all unnecessary nesting
                ext: '.min.js'   // replace .js to .min.js
            }
        },
        watch: {
            js:  { files: 'js/*.js', tasks: [ 'uglify' ] },
        }
    });
    
    // load plugins
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-contrib-uglify');
    
    // register at least this one task
    grunt.registerTask('default', [ 'uglify' ]);
    
    };
  6. 一旦完成,你只需要建造它.在控制台中键入:

    grunt
    

    或者-更好-如果您键入下面的执行命令-grunt将监视源文件的更改,如果您更改了其中任何一个,它将自动生成它们:

    grunt watch --force
    

然后可以添加更多插件,比如:css缩小、css预处理器(less、sass、触控笔)、jshint等等.

Node.js相关问答推荐

在渲染上部署Node.js服务器时出错:MODULE_NOT_FOUND

在Node JS中获取控制台选项卡标题

从MongoDB获取Tree数据

填充函数在Node.js和MongoDB中不起作用

控制台显示一个长对象,我可以';每当我发布更新Mongoose数据库的请求时,我都不知道错误是什么,

try 使用 pdf.js 时 pdf.getPage 不是函数

合并Shift对象数组以创建最终的排班表

使用pm2启动服务器

无法截取页面截图

Docker node_modules 文件夹上的 React 应用程序不可用

运行 cypress 测试时如何指定 .env 文件用于我的开发服务器?

Next.js 在我的电脑上没有构建错误,但它们在使用 Vercel 部署时发生

Mongoose-更新嵌套数组

在 node:readline 中按 CTRL+D 时会发出什么信号?

NestJS 共享模块的问题

fs.writefile 选项参数的可能值,尤其是只读文件的整数

如何使用 superagent/supertest 链接 http 调用?

npm 不会安装 express 吗?

Bootstrap 中的 Grunt 依赖冲突

node/nodemon 中是否有对 typescript 的源映射支持?