gulp-kmt
v0.0.0
Published
kissy module compiler for gulp
Downloads
5
Readme
###安装 npm install gulp-kmc
###使用文档 使用之前请先用kmd将您的KISSY模块转为符合commonJs规范的模块,具体转换方法参考kmd文档 https://www.npmjs.org/package/kmd
gulfile.js 编写示例
var gulp = require('gulp');
var kmc = require('gulp-kmc');
var src = "./src/mt",
dest = "./build/mt";
kmc.config({
depFilePath:dest+'mods-dep.js',//全局依赖文件关系,此处配置后下面的各个模块将不会再生成
packages:[{
name: 'mt',
combine:true,
base: src
},
{
name: 'udata',
ignorePackageNameInUri:true,
combine:true,
base: './' //ignorePackageNameInUri为true时不用写包名
}]
});
gulp.task('kmc', function() {
gulp.src(src+"/**/*.js")
//转换cmd模块为kissy模块
.pipe(kmc.convert({
minify: true,//是否压缩
//ext:"-min.js",//转换后文件扩展名,如果minify 为true则是压缩文件扩展名,同时也支持下面这种配置
ext:{
src:"-debug.js",//kissy1.5后添加debug参数会默认加载-debug.js
min:".js"
},
exclude: ['tasks'],//忽略该目录
ignoreFiles: ['.combo.js', '-min.js'],//忽略该类文件
depFilePath: dest +'/mods-dep.js'
}))
//合并文件
.pipe(kmc.combo({
minify: true,
ext:"-min.js",
files:[{
src: src+'/index.js',
dest: dest+'/core.js'
}]
}))
.pipe(gulp.dest(dest));
gulp.src("./udata/**/*.js")
.pipe(kmc.convert({
ignoreFiles: ['.combo.js', '-min.js'],
depFilePath: dest +'/udata/mods-dep.js'
}))
.pipe(kmc.combo({
minify:true,
files:[{
src: './udata/index.js',
dest: dest+'/udata/core.js'
}]
}))
.pipe(gulp.dest(dest+"/udata"));
});
gulp.task('default', ['kmc']);
or you can write like this if you wish
gulp.src([src+"/**/*.js","./taojie/**/*.js"])
.pipe(kmc.convert({
fixModuleName:false,
minify: true,
ext:{
src:"-debug.js",
min:".js"
},
exclude: ['tasks'],
ignoreFiles: ['.combo.js', '*-min.js'],
depFilePath: dest +'/mt/mods-dep.js'
}))
.pipe(kmc.combo({
minify:true,
ext:{
src:"-debug.js",
min:".js"
},
files:[{
src: src+'/mt/index.js',
dest: dest+'/mt/core.js'
},
{
src: './taojie/index.js',
dest: dest+'/taojie/core.js'
}]
}))
.pipe(kmc.dest({
"mt" :dest+"/mt", //一起打包时可以单独设置每个包的打包路径
"udata" : dest+"/udata",
"*": dest //其他文件打包路径
}));
//注意是kmc.dest 而非gulp.dest