bundle-collapser, 在browserify包中,将包路径转换为IDs以保存字节

分享于 

4分钟阅读

GitHub

  繁體 雙語
convert bundle paths to IDs to save bytes in browserify bundles
  • 源代码名称:bundle-collapser
  • 源代码网址:http://www.github.com/substack/bundle-collapser
  • bundle-collapser源代码文档
  • bundle-collapser源代码下载
  • Git URL:
    git://www.github.com/substack/bundle-collapser.git
    Git Clone代码到本地:
    git clone http://www.github.com/substack/bundle-collapser
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/substack/bundle-collapser
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    包 collapser

    将包路径转换为id以在browserify包中保存字节

    build status

    示例

    使用 bundle-collapser最简单的方法是从插件中:

    
    $ browserify -p bundle-collapser/plugin main.js
    
    
    
    

    输出中没有原始的require('./foo.js') 样式调用,输出只包含 require(2) 样式路径,这将缩小更紧凑的路径:

    (functione(t,n,r){functions(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)returna(o,!0);if(i)returni(o,!0);var f=newError("Cannot find module '"+o+"'");throwf.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];returns(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){module.exports=function (n) { return n *5 }
    },{}],2:[function(require,module,exports){var bar =require(1);module.exports=function (n) { returnbar(n+1) }
    },{}],3:[function(require,module,exports){var foo =require(2);var bar =require(1);console.log(foo(5) *bar(2));
    },{}]},{},[3]);

    api

    你也可以从api中使用捆绑包 collapser:

    var collapse =require('bundle-collapser');var fs =require('fs');var src =fs.readFileSync(__dirname+'/bundle.js', 'utf8');collapse(src).pipe(process.stdout);
    用法

    这里发行版中还包含一个命令行程序:

    
    usage: bundle-collapser {FILE | -} {OPTIONS}
    
    
    
     Collapse a browser-pack/browserify bundle from STDIN or a FILE.
    
    
    
    OPTIONS:
    
    
    
     -h --help Show this message.
    
    
    
    
    
    方法
    var collapse =require('bundle-collapser')

    流= 崩溃( src )

    浏览器包返回一个可以读的stream,输入源字符串 src 转换为将它的require() 调用折叠到 unpacking unpacking中的"deps"字段中的依赖目标。

    安装

    使用 npm插件,可以获取库:

    
    npm install bundle-collapser
    
    
    
    

    要获取命令行程序,请执行以下操作:

    
    npm install -g bundle-collapser
    
    
    
    
    许可证

    MIT


    bro  浏览  保存  Bundle  路径  Browserify  
    相关文章