programing

파일을 무시하는 방법 grunt uglify

itsource 2021. 1. 18. 07:58
반응형

파일을 무시하는 방법 grunt uglify


배경

약 30 분 전부터 grunt를 사용하기 시작했습니다. 그러니 참아주세요.

그러나 내 js를 살펴보고 모든 것을 하나의 파일로 압축하는 다소 간단한 스크립트가 있습니다.

암호

"use strict";
module.exports = function (grunt) {

    // load all grunt tasks
    require('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);

    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        uglify: {
            options: {
                beautify: true,
                report: 'gzip'
            },
            build: {
                src: ['docroot/js/*.js', 'docroot/components/pages/*.js', 'docroot/components/plugins/*.js'],
                dest: 'docroot/js/main.min.js'
            }
        },
        watch: {
            options: {
                dateFormat: function(time) {
                    grunt.log.writeln('The watch finished in ' + time + 'ms at' + (new Date()).toString());
                    grunt.log.writeln('Waiting for more changes...');
                }
            },
            js: {
                files: '<%= uglify.build.src %>',
                tasks: ['uglify']
            }
        }
    });

    grunt.registerTask('default', 'watch');

}

질문

내 main.min.js는 매번 컴파일에 포함됩니다. 내 min.js가 2x, 4x, 8x, 16x 등을 얻고 있음을 의미합니다.이 문제를 해결하는 가장 좋은 방법은 예외를 추가하고 무시하는 것 main.min.js입니까?


받는 의 src 배열의 추가,

'!docroot/js/main.min.js'

이것은 그것을 제외합니다. ! 제외로 바꿉니다.

http://gruntjs.com/api/grunt.file#grunt.file.expand

!로 시작하는 패턴과 일치하는 경로 반환 된 배열에서 제외됩니다. 패턴은 순서대로 처리되므로 포함 및 제외 순서가 중요합니다.

이것은 grunt uglify에만 국한된 것은 아니지만 파일을 지정하기 위해 grunt 규칙을 사용하는 모든 작업은이 방식으로 작동합니다.

일반적인 조언으로 소스 파일이 아닌 다른 곳에 빌드 된 파일을 두는 것이 좋습니다. 루트 dist폴더와 같습니다.

참조 URL : https://stackoverflow.com/questions/18453974/how-to-ignore-files-grunt-uglify

반응형