gulp 打包requirejs模块

开始接手项目的时候,公司用的框架(kendoui,有兴趣的同窗能够去看一下,这是收费的并且国内的资料不多)包含了全部的模块,未压缩的时候是8M,压缩完了是3.5M,个人主管和我说能不能拆分一下,当时我想也没想就说能够啊这还不简单。(给本身挖了个坑)源代码有20多万行,我是一行一行的看,主要是找出模块之间的依赖关系。而后看了两天半,我就拆出来了,而后发现合不起来了!!!!!!!(气死我了当时,dota都没好好打)。没办法只能Google吧。一顿操做猛如虎,发现可用的知识不是不少啊。大部分说让用r.js,可是不想啊,由于框架给了一个gulpFile文件,虽然我不少代码看不懂,可是我知道能用gulp打包合起来。
这个时候可能有同窗说了为何不用webpack,我之前配置的都是cmd模块啊,amd模块没配置过,不敢贸然使用,怕浪费时间拖了工期啊。 接下来讲一下网上的,有amd-optimize,而后大兄弟写了shell,但我运行报错了,发现如今使用的是gulp-exec,发现仍是不行,果断放弃,这时候又发现一个gulp-requirejs-optimize。简直开心的要飞起来了。发现总是把一些没有的打进来,就又查了一下发现!['form/kendoui/xx.js','form/kendoui/xx.js']就能够了。jquery

let gulp = require('gulp');
let concat = require('gulp-concat');
let uglify = require('gulp-uglify');
let amdOptimize = require('amd-optimize');
let reqOptimize = require('gulp-requirejs-optimize');
let shell = require('gulp-shell');
let babel = require('gulp-babel')
gulp.task('jsTask',async function(){
	return gulp.src('form/kendoui/main.js',!['])
		.pipe(reqOptimize({
			paths:{
			},
			exclude:[
				'jquery'
			],
			// mainConfigFile:'form/kendoui/main.js',
			optimize:'none',
			fileExclusionRegExp: /^()+\.js$/,
			skipModuleInsertion: true
		}))
	.pipe(concat(''))
	.pipe(gulp.dest('./dist/js'))
});
复制代码

`webpack

我把总体的结构贴出来,有须要的同窗能够看一下。web

相关文章
相关标签/搜索