반응형
gulp에서 파일을 복사하고 상위 디렉토리를 기반으로 이름을 바꾸는 방법을 찾고 있습니다.
각 모듈에 대해 빌드 디렉토리에 복사해야하는 파일이 몇 개 있으며 이로부터 반복되는 코드를 최소화하는 방법을 찾고 있습니다.
gulp.src('./client/src/modules/signup/index.js')
.pipe(gulp.dest('./build/public/js/signup'));
gulp.src('./client/src/modules/admin/index.js')
.pipe(gulp.dest('./build/public/js/admin'));
다음과 같이 :
gulp.src('./client/src/modules/(.*)/index.js')
.pipe(gulp.dest('./build/public/js/$1'));
분명히 위의 방법은 작동하지 않으므로이를 수행하는 방법이 있습니까? 아니면 이미 수행하는 npm이 있습니까?
감사
가장 좋은 방법은 base
다음과 같이 파일을 소싱 할 때 구성하는 것입니다 .
gulp.src('./client/src/modules/**/index.js', {base: './client/src/modules'})
.pipe(gulp.dest('./build/public/js/'));
이것은 gulp
모듈 디렉토리를 상대 경로를 결정하기위한 시작점으로 사용하도록 지시 합니다.
(또한 /**/*.js
모든 JS 파일을 포함하려는 경우 사용할 수 있습니다 ...)
답은 아니지만 검색 결과에이 질문이 나타나는 경우에 적용됩니다.
gulp에서 파일 / 폴더를 복사하려면
gulp.task('copy', () => gulp
.src('index.js')
.pipe(gulp.dest('dist'))
);
return gulp.src('./client/src/modules/(.*)/index.js')
.pipe(gulp.dest('./build/public/js/$1'));
나를 위해 일했다!
입력 디렉토리 트리 보존에 사용은 보존됩니다.
.pipe(gulp.dest(function(file) {
var src = path.resolve(SRC_FOLDER);
var final_dist = file.base.replace(src, '');
return DIST_FOLDER + final_dist;
}))
이것을 사용하여 src :를 넣을 수 있습니다 .src(SRC_FOLDER + '/**/*.js')
.
일부 플러그인은 디렉토리 트리를 평평하게 만들기 때문에 다른 응답은 나를 위해 작동하지 않았습니다 (예 : base:
on src()
} 사용) .
병렬로 파일 복사
gulp.task('copy', gulp.parallel(
() => gulp.src('*.json').pipe(gulp.dest('build/')),
() => gulp.src('*.ico').pipe(gulp.dest('build/')),
() => gulp.src('img/**/*').pipe(gulp.dest('build/img/')),
)
);
반응형
'IT박스' 카테고리의 다른 글
ActionBar에 표시된 메뉴 항목을 업데이트하는 방법은 무엇입니까? (0) | 2020.09.03 |
---|---|
자바에서 루프를 사용하지 않고 전체 파일 읽기 (0) | 2020.09.02 |
Android SQLite : 업데이트 문 (0) | 2020.09.02 |
십진수 정규식, 십진수 뒤의 숫자는 선택 사항입니다. (0) | 2020.09.02 |
핸들러는 추상적이며 인스턴스화 할 수 없습니다. (0) | 2020.09.02 |