Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
解决前端工程的根本问题!
$ npm install -g fis
fis的 自动化/辅助开发工具 被发布为一套 npm包,对它对环境的要求是:
安装好fis之后,执行 fis -v,如果看到下面信息,恭喜,你已拥有fis的开发调试环境啦!
执行 fis --help 让我们来看一下fis命令的相关帮助:
Usage: fis <command>
Commands:
release build and deploy your project
install install components and demos
server launch a php-cgi server
Options:
-h, --help output usage information
-v, --version output the version number
--no-color disable colored output
正如你所见,使用fis你需要——也只需要——记住三条命令:
接下来,就让小编分别介绍这三个命令的使用,见证奇迹的时刻到了。。。
难度等级:★☆☆☆☆
install命令被设计用来 各种安装,无论你是想初始化一个模块,还是想下载一个前端基础库,亦或下载一份配置文件,总之但凡开发需要的,只要fis仓库里有,你就用它来安装就对了。 理论上任何资源都可以通过这个命令来获取,因为它的实现非常简单: 从fis代码仓库下载->解压到当前目录。
少说多练,咱们先来装个小东西瞧瞧:
$ fis install firstblood-demo
install [firstblood-demo@latest]
如果你在执行命令的目录下发现了一个叫firstblood的目录,恭喜你,你已踏出前端工业化之路的第一步啦!
难度等级:★★★☆☆
release是一个非常强大的命令,它的主要任务就是进行代码的 编译 与 部署,它的参数囊括了前端开发所需的各种基础功能:
fis release
# or
fis release --dest preview
fis release -d output
工作目录
的路径
fis release -d ../output
fis release -d /home/work/ouput
# win
fis release -d d:/work/output
fis release -d remote
fis releaes -d remote,qa,rd,output,preview,D:/work/output
初步了解之后,让我们对刚刚下载的项目做一次编译,look at me:
$ cd firstblood
$ fis release --md5 --dest ./output
[WARNI] missing fis-conf.js
这里有个小小的warning,说找不到fis的配置文件,咱们不用管它,因为我们要体验 零配置 使用。接下来进入到firstblood/output目录看一下产出的文件,尤其是index.html,你将看到fis的自动化工具对 html、js、css各自扩展了三种语言能力:
有了这三种语言能力,你的团队前端工业化水平将有很大的提升,因为:
ok,回到刚刚的firstblood示例项目,进入到output目录,你将看到:
接下来,我们使用install命令安装一个配置文件,用于 调整文件编译后的部署路径 :
$ fis install firstblood-conf
此时firstblood项目目录下会多出一个fis-conf.js文件,让我们看一下里面的内容:
fis.config.merge({
roadmap : {
domain : {
//所有css文件添加http://localhost:8080作为域名
'**.css' : 'http://localhost:8080'
},
path : [
{
//所有的js文件
reg : '**.js',
//发布到/static/js/xxx目录下
release : '/static/js$&'
},
{
//所有的css文件
reg : '**.css',
//发布到/static/css/xxx目录下
release : '/static/css$&'
},
{
//所有image目录下的.png,.gif文件
reg : /^\/images\/(.*\.(?:png|gif))/i,
//发布到/static/pic/xxx目录下
release : '/static/pic/$1'
}
]
}
});
删除一下output目录,再次执行编译命令:
$ fis release --md5 --domains --dest ./output
就可以看到,fis调整了编译产出的目录结构。编辑output目录下的index.html,还会发现,fis将所有引用资源的地方也都调整为了发布路径,所有css也自动添加了域名!
fis release命令还有强大的自动上传功能,这篇文档不会详细介绍此功能的使用方式,但小编可以先发个截图表示一下。截图中显示的是我在windows下编译了firstblood项目,然后自动同步到我的linux测试机上的截图。之后我修改了index.html文件,它又帮我秒传上去了,嚯嚯!
当你学习到这里时,恭喜你,你已掌握了F.I.S自动化/辅助开发工具的大部分功能,下面一条命令,会给你带来更爽的开发体验。
难度等级:★★☆☆☆
考虑到工程师需要在后端程序没开始的时候就能写点东西看看效果,或者离开公司在别处与妹子把酒言欢时突然来了灵感要写码,没有一个小巧的调试服务器怎么能行?!fis团队将本地调试服务器作为一项重要功能来开发,赋予工程师无处不在的写码调试能力。不要小看这个调试服务器,它是特别定制的,使用php-java-bridge技术实现,完美支持运行php程序,可以 比较真实 的模拟产品线线上运行环境。
fis的调试服务器依赖于用户本地的 jre 和 php-cgi 环境,所以:
搞定环境后,让我们来启动调试服务器看看:
$ fis server start --no-rewrite
checking java support : version 1.6.0
checking php-cgi support : version 5.2.11
starting fis-server on port : 8080
服务器启动之后,它会自动检查环境,最后告诉你它监听了8080端口,这个时候,你的浏览器应该打开了一个调试服务器根目录的浏览页面,地址是 **http://localhost:8080/**。
在刚刚的firstblood项目中执行命令:
$ fis release --md5 --optimize --watch --live
现在,fis已经将编译好的代码发布到调试服务器中啦,刷新浏览器,你会看到我们的firstblood示例项目的运行效果。此时,你修改项目文件都将自动编译并发布到调试服务器目录下,看看页面源代码,你会发现更多惊喜!顺便恭喜你,至此你已完全掌握了fis的基本用法,你可以借助fis这个利器去挑战大型商业产品开发了!
1.4.19 / Thu Oct 10 2013
升级fis-command-release至v0.8.12
FAQs
front-end integrated solution.
The npm package fis receives a total of 175 weekly downloads. As such, fis popularity was classified as not popular.
We found that fis demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.