47 lines
1.1 KiB
JavaScript
Executable File
47 lines
1.1 KiB
JavaScript
Executable File
let gulp = require('gulp');
|
||
let ts = require('gulp-typescript');
|
||
let uglify = require('gulp-uglify');
|
||
let babel = require('gulp-babel');
|
||
let plumber = require('gulp-plumber');
|
||
let tsp = ts.createProject('tsconfig.json');
|
||
|
||
|
||
//常量配置
|
||
const PATHS = {
|
||
scripts:['./src/**/*.ts'],
|
||
output:'./build',
|
||
minifyJs: './build/**/*.js'
|
||
};
|
||
//编译ts文件为js
|
||
gulp.task('build-ts',function(){
|
||
return tsp.src()
|
||
.pipe(plumber())
|
||
.pipe(tsp())
|
||
.pipe(gulp.dest(PATHS.output));
|
||
});
|
||
|
||
// 压缩混淆转换js代码
|
||
gulp.task('minify-js',function(){
|
||
gulp.src(PATHS.minifyJs)
|
||
.pipe(babel({
|
||
presets: ['env']
|
||
}))
|
||
.pipe(uglify({
|
||
ie8: true
|
||
}))
|
||
.pipe(gulp.dest(PATHS.output));
|
||
});
|
||
|
||
//当ts文件变化,重新编译ts文件为js
|
||
gulp.task('watch-ts',function(){
|
||
gulp.watch(PATHS.scripts,['build-ts'],['minify-js']);
|
||
});
|
||
|
||
// 复制 RSA非对称加密的 api 接口加密文件到build文件夹
|
||
gulp.task('copy',function(){
|
||
gulp.src('src/rsa/*.pem')
|
||
.pipe(gulp.dest(`${PATHS.output}/rsa`));
|
||
});
|
||
|
||
//开发任务
|
||
gulp.task('dev',['build-ts','minify-js','watch-ts','copy']); |