FIS3的升级是势在必行,FIS3和FIS2使用方式大致相同,这里主要讲一下从FIS2到FIS3要注意的内容
v0.12.x
版本,不能安装5.x和io的版本更新feg
的时候,需要先停止server,就是需要feg server stop
,之后切换到非C盘
下更新fis3-postpackager-usemin
,废弃默认的auto
方式,详细使用方法请戳http://webpack.nie.netease.com/#pack=fis_plugs/packer/postpackager-usemin.htmlGrunt
类似,而FIS3采用函数调用方式,跟Gulp
类似-ompDd
这种,因为配置文件里已经定义好了3
src //存放该项目源码
|--css //存在所有less文件和css文件
| |--_reset.less //重置页面默认样式(可以直接使用)
| |--_common.less //项目中通用样式(需要自行修改)
| |--index.less //项目中对应模块或者页面的样式(这个只是例子,需要自行修改与添加)
|--img //存放所有图片文件
|--data //存放不希望打包后的文件有版本号
|--config //存在配置文件
|--inline //存在所有需要被引用的模块html文件(例如多个页面公用的header,footer等等,或者是一个页面太长了,将各自模块放于此)
|--js //所有js文件
| |--app //与项目逻辑相关的js文件,例如`index.js`
| |--common //项目中公用的js文件
| |--lib //项目中需要用到的第三方库与插件,例如`baiduTemplate.js`,`jquery.slider.js`等
|--template //项目中需要用到的模板
| |--index.tmpl //示例模板文件
|--index.html //项目中需要的页面html文件
dist //存放需要发布的文件
|--css //这里是所有编译好的less转css的文件
|--img //所有需要发布的img
|--pkg //这里是已经自动打包合并好的js和css文件,以及lib合并文件
|--data //这里是存不需要添加版本号的资源(img,css,js)
|--index.html //修改完毕的html
如何安装FIS3,如何使用来开发,如何使用来打包发布等
npm install -g feg
希望基于FIS3的项目,不需要手动自己去建立文件夹结构与下载
fis-conf.js
的配置文件
git clone https://git-wz.nie.netease.com/nie-comm/fis3-project-demo.git //获取基于fis3的通用模板
git clone https://git-wz.nie.netease.com/nie-comm/fis3-cms-project.git //获取基于fis3的cms模板
//添加-n参数表示不新建文件夹,直接copy项目内容到当前文件夹
feg get fis3 -n
data-fixed="true"
来区分是否合并了 //script标签背后<!--ignore-->,表示,该文件不会进行自动打包,其余的会合并成为一个js文件
<script charset="gb2312" type="text/javascript" src="js/lib/baiduTemplate.js"></script><!--ignore-->
fis.match('src/js/lib/*.js',{
packTo : 'pkg/lib.js'
});
//这句是启动一个本地服务,输入完后,会自动打开浏览器,定位到:http://127.0.0.1:8080
feg server start
//这句是编译源码`src`文件夹下的,然后监听文件变化,自动编译,以及开启livereload,自动刷新浏览器(IE不支持)
feg release -wL
domain
中的值,修改为线上正式资源地址,末尾不能有/
删除dist
文件夹(务必) //发布打包
feg release dist //打为测试环境的包
feg release release //打为发布环境的包
//打包一个相对路径的包,本地包不会用include
feg release local
//在当前路径下输入以下命令,最后会在当前目录下多出一个output文件夹,存放压缩后的图片
feg compress png
//在当前路径下输入以下命令,最后会在当前目录下多出一个output文件夹,存放压缩后的图片
feg compress jpg 60
//最后参数60为压缩质量,默认不填为60