1.fis3可以用fis.set进行一些全局的配置,包括忽略文件、文件后缀处理类型、源码过滤等等,用fis3.get可以得到配置信息,详见:
http://fis.baidu.com/fis3/docs/api/config-props.html 【全局属性部分】
2.fis3 作为工程化工具,完成的就是 单文件编译->打包 的过程,而这个过程用到的无外乎文件匹配和某些插件
fis.match 用于文件匹配:match方法语法及释义:http://fis.baidu.com/fis3/docs/api/config-api.html 【fis.match部分】
match方法文件属性参数详解:http://fis.baidu.com/fis3/docs/api/config-props.html 【文件属性部分】
(这些文件属性里面常用的包括release packager等)
fis.plugin 用于配置插件:plugin方法语法及释义:http://fis.baidu.com/fis3/docs/api/config-api.html 【fis.plugin部分】
一般match和plugin方法都是配合一起使用的,格式:
fis.match('src/**.{less,vue:css,vue:less}', {
rExt: 'css',
parser: fis.plugin('less-2.x')
});
其实这种插件都是一个个的npm模块而已
3.fis3 支持模块化开发,及是否支持npm模块管理(大白话就是项目中有没有 node_modules的区别)
使用fis.hook api即可完成以上操作:
模块化开发有commonjs amd cmd三种,设置代码如下:
fis.hook('commonjs', {
extList: [
'.js', '.coffee', '.es6', '.jsx', '.vue'
],
umd2commonjs: true,
ignoreDependencies: [
//
]
});
// 支持npm模块
fis.unhook('components');
fis.hook('node_modules', {
mergeLevel: 3
});
4.用media区分编译文件的模式