• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

chenmnkken/gulp-seajs-combo: seajs(CMD) Module combo pulgin for gulp

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

chenmnkken/gulp-seajs-combo

开源软件地址(OpenSource Url):

https://github.com/chenmnkken/gulp-seajs-combo

开源编程语言(OpenSource Language):

JavaScript 96.6%

开源软件介绍(OpenSource Introduction):

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




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
yargalot/gulp-accessibility: Gulp plugin for AccessSniff发布时间:2022-06-21
下一篇:
Sponsor @brillout on GitHub Sponsors · GitHub发布时间:2022-06-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap