代码打包预处理工具

最近因业务原因,需要将

render(page({}), compList, 'js/page/file.js' );

这样的代码中的第三个参数在上线的时候替换成线上地址,但页面因为开启了manifest,没法在后端做配置输出,就在build的时候分析该语法的第三个参数来替换为新地址。需要处理的代码会加上特定的注释来让分析器分析来实现预处理,大概像这样:

/*# render #*/
    render(page({}), compList, 'js/page/file.js' );
/*# end #*/

这样在build的时候,给个配置就能转换为新的代码输出了:

 

main({
    file:"test.js",
    render:{
        files:["http://static.cdn.address/newfile.js"]
    }
});

输出:

/*# render #*/
    render(page({}), compList,"http://static.cdn.address/newfile.js");
/*# end #*/

 

源码地址:

  https://github.com/randomyang/prepro

posted @ 2014-04-28 22:52 随机 阅读(...) 评论(...) 编辑 收藏