Web资产预编译文件系统代理。请参阅JSCONF.EU演讲:重新组装
将保险丝文件系统安装在目标目录上,自动加载可用的编译器,根据要求编译资产,如果源文件未修改,请汇编资产,请注意原始文件以按需更改。
从此,为您所有不同工具的自定义配置的传输插件设置设置:
+---------------+ | Source.es6.js | -+--> Transpiler --> Module loader --> Browser +---------------+ | +--> Watcher --> Transpiler --> Livereload | +--> Transpiler --> Linter | +--> Transpiler --> Test runner | +--> Transpiler --> Build system
介入:
+---------------+ +--------------------------+ | Source.es6.js | --> | Source.transpiled.es6.js | -+--> Module loader --> Browser +---------------+ +--------------------------+ | +--> Watcher --> Livereload | +--> Linter | +--> Test runner | +--> Build system
先决条件:保险丝
npm install -g fusile
一般用法: fusile <sourceDir> <mountPoint>
Fusile是一个编译文件系统代理。为了使其汇编您的资产,您需要安装其中一个或多个这些预编译器: LiveScript
, babel-core
,Coco, coco
, coffee-script
, dogescript
, marked
, less
,Sarked, myth
, node-sass
SASS,STELLUS, stylus
, swig
当上述任何上述预编译器都可以在Fusile(您的项目根或全球安装)的上下文中可用时,Fusile将自动加载它,并在您从安装点读取文件时使用相应的文件扩展名来编译文件。
安装了新的transpiled源目录后,请直接将浏览器,Web服务器,Linter,Test Runner直接指向其中的文件,然后可以使用。
状态:经过很好的测试。需要现实世界的曝光。反馈表示赞赏!
v1.x
自动加载安装的转侧
资产按需编译
智能汇编资产的缓存
基于文件观察者的缓存破坏(可选)
AutopReFixer
Sourcemaps
编译文件扩展名重写为目标扩展
隔离雅阁转板自动加载到单独的模块中
v2.x
暴露一个编译生命周期回调,让人们挂在自己的管道中
配置:单个转板器的选项
配置:传输映射的文件扩展名 /球模式
检测编译的DIR文件观察器Init事件,并将其代理到源
v3.x
重构和文档
稳定研究和改进
绩效研究和改进
一般用法: fusile <sourceDir> <mountPoint> --watch "**/*.jsx" --watch "**/*.less" -w "**/*.stylus" -w "**/*.scss"
您可以将文件手表添加到Fusile Mountpoint中的文件中。由于Fusile还不能拾取您的文件手表事件,因此您需要指定上面的Glob模式,该图案将在匹配模式上设置文件观察者。
文件观察者将通过单个文件设置,并且只有在您打开文件以读取的时候。这应确保微小的inode手表和最低量的重新编译。
请注意,引用Watcher Glod图案,以避免在执行时避免外壳扩展球模式。
麻省理工学院