var version = 'v3.1' // var version = 'debug' fis.set('project.exclude', ['tpl/**.tmpl']); /*设置编译范围*/ fis.set('project.files', ['frontend/**']); /*设置发布路径*/ fis.match(/^\/frontend\/(.*)/i, { release: version + '/$1', url: version + '/$1' }); /*Sprite背景图移到staticPub/images*/ fis.match(/^\/frontend\/(.*\.png)/i,{ url: version + '/images/sprite/$1', release: version + '/images/sprite/$1', useOptimizer : false }); /*启用 fis-spriter-csssprites 插件*/ fis.match('::package', { spriter: fis.plugin('csssprites',{ layout: 'matrix', margin: 20, htmlUseSprite: true,/*开启模板内联css处理*/ styleReg: /(|>))([\s\S]*?)(<\/style\s*>|$)/ig }) }); /*对CSS中的图片进行合并,包括html中的内联样式*/ fis.match('*.{css,html,tpl}', { useSprite: true, }); fis.match('*.tmpl', { isJsLike: true, parser: fis.plugin('utc') }) /*css压缩*/ fis.match('*.css', { optimizer: fis.plugin('clean-css') }); /*特殊目录不加MD5戳*/ fis.match(/^\/frontend\/img\/achievement\/(.*\.png)/i,{ useHash: false }); /*图片文件域名配置*/ fis.media('dev').match('*.{jpg,png,jpeg,gif,css,js}', { domain: '../../', }); fis.media('prod').match('*.{jpg,png,jpeg,gif,css,js}', { domain: 'http://lolbox.duowan.com/staticPub/', }).match('::package', { postpackager: fis.plugin('loader', { allInOne: true }) }).match('*.js', { optimizer: fis.plugin('uglify-js',{ mangle: { except: 'exports, module, require, define' } }) }).match('*.{js,css,png,jpg,gif,swf}', { useHash: true });