1.2.4 • Published 6 years ago

gulp-seajs-combo v1.2.4

Weekly downloads
8
License
MIT
Repository
github
Last release
6 years ago

gulp-seajs-combo


seajs(CMD) Module combo pulgin for gulp Chinese Docs

Install

$ npm install --save-dev gulp-seajs-combo

Usage

var gulp = require( 'gulp' ),
    seajsCombo = require( 'gulp-seajs-combo' );
    
gulp.task( 'seajscombo', function(){
    return gulp.src( 'src/js/main.js' )
        .pipe( seajsCombo() )
        .pipe( gulp.task('build/js') );
}); 

API

seajsCombo( options )

Unsupported files are ignored.

options

encoding

Type : String

Default : utf-8

ignore

Type : Array

Ignored module list. combo module main, need ignore dependencies global and common, configuration ignore list :

ignore : [ 'global', 'common' ]

Ignore configuration has two rules, if need ignore src/a and src/test/a:

ignore : [ 'a' ]

If src/a and src/test/a need ignore src/test/a

ignore : [ 'src/test/a' ]

map

When use seajs.use, module id is foo/bar/biz, but the module file with respect to gulp.src path is ./biz.js, use map configuration.

map : {
    'foo/bar/biz' : './biz'
}

plugins

plugins for special module. A module need combo Handlebars tpl module, but tpl will compile before combo.

var handlebars = require( 'gulp-handlebars' ),
      wrap = require( 'gulp-wrap' );
      
...
plugins : [{
    ext : [ '.tpl' ],
    use : [{
            plugin : handlebars, 
        },{
            plugin : wrap,
            param : ['define(function(){return Handlebars.template(<%= contents %>)});']
    }]
}]

Combo rule

Module a.js :

define(function(){
    var b = require( 'deps/b' );
    return 'a' + ' ' + b;
});

Module b.js :

define(function(){
    return 'b';
});

gulp code :

gulp.src( 'src/a.js' )
    .pipe( seajsCombo() )
    ...

Combined a.js :

define('b',function(){
    return 'b';
});
define('a',['b'],function(){
    var b = require( 'b' );
    return 'a' + ' ' + b;
});

File main.js :

seajs.use( 'a' );

Gulp code :

gulp.src( 'src/main.js' )
    .pipe( seajsCombo() )
    ...

Combined main.js :

define('b',function(){
    return 'b';
});
define('a',['b'],function(){
    var b = require( 'b' );
    return 'a' + ' ' + b;
});
seajs.use( 'a' );

The combined module will keep none path id, src/a combined id is a, foo/bar/p combined id is p.

If combined module id is duplicate, gulp-seajs-combo will modify original id. src/a and src/test/a combined id both is a, then gulp-seajs-combo will modify src/test/a id is s_gulp_seajs_combo_xx.

Parse seajs.config

gulp-seajs-combo will parse alias vars paths in seajs.config, other configuration is ignored, the configuration value must be a String, will ignored variable. see more seajs.config. test/src/m.js and test/build/m.js is parse example.

License

MIT @ Yiguo Chan

1.2.4

6 years ago

1.2.3

10 years ago

1.2.2

10 years ago

1.2.1

10 years ago

1.2.0

10 years ago

1.1.3

10 years ago

1.1.2

10 years ago

1.1.1

10 years ago

1.1.0

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago