学习官网
 
1. fis release: 编译并发布
    fis release -m: md5加密
    fis release -o : 内容压缩
    fis release -p : 文件打包合并
    
    可连写:fis release -mop
 
2.fis release -w 文件监听
 
 
3.fis-conf.js:
 
 // 设置图片合并的最小间隔
fis.config.set('settings.spriter.csssprites.margin', 20);
// 取消下面的注释开启simple插件,注意需要先进行插件安装 npm install -g fis-postpackager-simple
fis.config.set('modules.postpackager', 'simple');
// 取消下面的注释设置打包规则
fis.config.set('pack', {
'/pkg/lib.js': [
'js/lib/jquery.js',
'js/lib/underscore.js',
'js/lib/backbone.js',
'js/lib/backbone.localStorage.js',
],
// 取消下面的注释设置CSS打包规则,CSS打包的同时会进行图片合并
'/pkg/aio.css': '**.css'
});
// 取消下面的注释可以开启simple对零散资源的自动合并
// fis.config.set('settings.postpackager.simple.autoCombine', true);
 
3.MD5压缩合并发布到src同级本地目录
    fis release -mop -d ../output
 
4.seajs 压缩config处理(这是我自己写的,想config文件里的别名追加时间戳,希望能有更好的办法)
 
 
 
 
-------------------------------------升级至fis3--------------------------------------------
 
 
/****************************************************************************************
* 1.压缩js
*/
var jsFiles = '{/script/*,/script/*/*,/library/*,/library/*/*,/dist/template}.js';
fis.match(jsFiles, {
// fis-optimizer-uglify-js 插件进行压缩,已内置
optimizer: fis.plugin('uglify-js')
}); /****************************************************************************************
* 2.压缩css
*/
fis.match('*.css', {
// fis-optimizer-clean-css 插件进行压缩,已内置
optimizer: fis.plugin('clean-css')
});
/****************************************************************************************
* 3.合并资源
*/
var commonJs = '/script/common/*.js';
var bundleJs = '{/library/*/*,/script/service/*,/dist/template}.js'; //合并css
fis.match('/dist/style.css', {
packTo: '/dist/style.css'
});
fis.match('/script/library/swiper/swiper-3.3.1.min.css',{
packTo:'/dist/swiper.css'
}) //合并js
fis.match(commonJs, {
packTo: '/dist/common.js'
});
fis.match(bundleJs, {
packTo: '/dist/bundle.js'
}); /****************************************************************************************
* 4.对合并CSS进行图片合并
*/
fis.match('::package', {// 启用 fis-spriter-csssprites 插件
spriter: fis.plugin('csssprites')
}) fis.config.set('settings.spriter.csssprites', {
//图之间的边距
margin: 2,
//使用矩阵排列方式,默认为线性`linear`
layout: 'matrix'
}); fis.match('/dist/style.css', {
// 给匹配到的文件分配属性 `useSprite`
useSprite: true
}); fis.match('::packager', {
postpackager: fis.plugin('loader')
}); /****************************************************************************************
* 5.合并资源加时间戳
*/ fis.match('/dist/*.css', {// css加md5
useHash: true
});
fis.match('/dist/*.js', {// js加md5
useHash: true
});
fis.match('*.png', {// png加md5
useHash: true
});
fis.match('*.jpg', {// png加md5
useHash: true
}); /****************************************************************************************
* 6.忽略打包无用文件
*/
fis.set('project.ignore', [
'page/**',
'tpl/**',
'script/**',
'style/**',
'/*.js',
'/*.json',
'/*.txt',
'node_modules/**',
'.git/**',
'.svn/**'
]);

另:

  忽略页面js,防止沉底-->script后加(不能有空格)

<!--ignore-->
 

FIS的更多相关文章

  1. karma的基础应用之与fis结合

    一.介绍 1. karma是单元测试运行框架,可以集成jasmine断言库,也支持babel. 2.fis是百度前端团队开源推出的前端工程化管理工具. 二.karma的基础应用 1.karma的基础a ...

  2. angularjs + fis +modJS 对于支持amd规范的组建处理(PhotoSwipe 支持,百度webUpload支持)

    这不是很好的处理方式,但是能够解决问题,希望有大神推荐更好的方式. 前端模块使用angularjs + fis +modJS 开发前端应用有两个月了.总结了以下的优点: fis 自动构建,自动发布,功 ...

  3. gulp系列文章一 fis vs grunt vs gulp,为什么要是gulp呢?

    gulp是最近火起来的前端构建工具,大有赶超grunt之势,它和grunt这种构建工具比较像. grunt是写一个Gruntfile.js来写配置代码,gulp则是写一个gulpfile.js来写配置 ...

  4. fis总结

    1.fis捕获组 $1.$2.$3……是正则表达式替换中对捕获组的引用 $0或$&是对整个匹配字符串的引用 2.fis命令 fis3 release -d ../output prod -wL ...

  5. 前端自动化工具 -- fis 使用简介

    https://github.com/fex-team/fis FIS入门: http://fis.baidu.com/docs/beginning/getting-started.html FIS ...

  6. FIS--关于下载php后的配置(启动fis的调试服务器(注意添加 --no-rewrite 参数),如果报错 没有php-cgi环境,请 安装 它,并把php-cgi命令加到系统的环境变量)

    “启动fis的调试服务器(注意添加 --no-rewrite 参数),如果报错 没有php-cgi环境,请 安装 它,并把php-cgi命令加到系统的环境变量” 对官网这句话的解释: 下载php-5. ...

  7. 百度FIS入门

    1.fis作为nodejs的模块来管理的,所以首先得安装nodejs,看我前面的安装nodejs的文章. 2.官方的案例下载包https://github.com/hefangshi/fis-quic ...

  8. fis自动化部署

    1,自动部署到远程服务器 (1),参考:https://github.com/fex-team/receiver (2),接收服务代码目录:/var/www/html/fis/receiver-mas ...

  9. 基于fis的前端模块化和工程化方案

    前端构建工具 面对日益复杂的前端环境以及前端技术.node技术的高速发展,前端的开发也越来越工程化,体系化,也就是出现了前端自动化构建工具.他们完成的任务目标基本是: js,css,图片的自动压缩合并 ...

随机推荐

  1. 关于Unity中SteamVR_Controller.Input的错误

    当我在看某鸥的视频的时候,里面讲到用Unity做一个贪食蛇后,加入SteamVR插件,并且能用手柄控制蛇的移动.当我跟着上面一步一步做的时候,发现我代码都写完后,启动报错,而视频里面的老师讲的缺没有报 ...

  2. ie7中ul不能嵌套div和li平级

    我要讲一个忧伤的故事,本以为清晰的层次结构,ul里不能嵌套div和li平级,不然会乱乱乱! 代码: <ul class="catshow">              ...

  3. git submodule 使用

    这个是备忘录,原网页: https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407 http://cncc.bingj.c ...

  4. matchesSelector 匹配选择器表达式sizzle的实现

    Sizzle.matchesSelector = function( node, expr ) {     return Sizzle( expr, null, null, [node] ).leng ...

  5. [原创]cocos2d-x研习录-第三阶 背景音乐和音效

    在游戏中,音效是一个不可或缺的部分,它可以为我们的游戏增加效果.音效在游戏中一般分为长时间的背景音乐和短促的特效音乐.Cocos2D-x支持多种常见音乐格式(mp3.wav等). Cocos2D-x提 ...

  6. Qt开发中的实用笔记一--xml,Qpainter,Delegate:

    因为开发环境不能联网,开发中用到有用的知识就记在word稳定中,不知不觉就记载了几十页,为避免笔记丢失,现在就一点点忘博客上搬,方便日后回顾! ---------------------------- ...

  7. Qt实用小技巧(转)

    原博网址:http://www.cnblogs.com/feiyangqingyun/archive/2010/12/06/1898143.html 1.如果在窗体关闭前自行判断是否可关闭答:重新实现 ...

  8. SQL系统数据库简介(mssqlsystemresource)

    mssqlsystemresource

  9. RegOpenKeyEx和RegSetValueEx返回ERROR_SUCCESS,但注册表未发生变化。

    win7 x64,需要open的时候加上KEY_WOW64_64KEY. lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\\Microso ...

  10. 关于CPLD与FPGA的对比分析

    1.PLD/FPGA/CPLD PLD(Programmable Logic Device):可编程逻辑器件,数字集成电路半成品,芯片上按照一定的排列方式集成了大量的门和触发器等基本逻辑元件,使用者按 ...