首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【工具】fis3 - 使用教程(01)

{png,js,css}’, {` release: ‘/static/$0’ }); 7 . 我们再次发布一下。运行fis3 release -d ....例如: fis.media('develop').match('.js',{` optimizer: fis.plugin('uglify-js') }); 然后执行fis命令: fis3 release...常用的插件属性有’uglify-js’、‘clean-css’、'png- compressor’等等。以上列出的都是fis3内置的插件,无需安装。...雪碧图(Sprite)——资源图片合并 需要注意的是,fis3只会对在CSS文件中对资源路径中带有?__sprite的图片进行合并(如:background-image:url(‘....对这些图片的合并不会影响到资源图片的显示效果。要知道,合并的目的是为了减少请求数量。 做法:配置文件fis-conf.js 首先,我们先改写css文件中引用图片的路径的写法,带上?

32330

从Npm Script到Webpack,6种常见的前端构建工具对比

由于前端工程师很熟悉JavaScript,Node.js又可以胜任所有构建需求,所以大多数构建工具都是用Node.js开发的。本文就来一一介绍它们。...模块合并:在采用模块化的项目里会有很多个模块和文件,需要通过构建功能将模块分类合并成一个文件。 自动刷新:监听本地源代码的变化,自动重新构建、刷新浏览器。...4 Fis3 Fis3(https://fex.baidu.com/fis3/)是一个来自百度的优秀国产构建工具。...图片合并:通过spriter配置合并CSS里导入的图片到一个文件中,来减少HTTP请求数。 大致使用如下: 可以看出Fis3很强大,内置了许多功能,无须做太多配置就能完成大量工作。...Fis3的优点是集成了各种Web开发所需的构建功能,配置简单、开箱即用。其缺点是目前官方已经不再更新和维护,不支持最新版本的Node.js

2K60
您找到你想要的搜索结果了吗?
是的
没有找到

简单介绍下modJS

近期把团队的项目构建迁移到fis3,同时把模块加载器也由之前的requirejs切换到了modJS。 有些同学可能不了解modJS,这里做个简单的介绍。 那么,modJS是什么呢?...发布编译时,由构建工具统一添加define包裹,自动添加模块id(默认根据路径生成,也可以在fis3的配置中声明格式)。整体的开发体验更好一些。...此外,js文件打包及异步依赖的问题,也可以通过生成resourceMap来解决。 一般情况下,modJS配合fis3已经可以满足大部分需求,并且官方还提供了完整支持amd规范的esl-mod.js。...而modJS设计之初,便考虑到稍微大型点的前端项目都会打包模块js减少请求优化性能,依赖的模块其实早已合并打包,并不需要在define中声明后再异步加载。...当用户点击其他页面(非刷新)时,再异步加载该页面用到的mod.main.js(其他页面打包合并后的js),这部分js的模块id和url由构建工具统一打到resourceMap中。

55350

fis3 新特性应用

本文作者:IMWeb 黎清龙 原文出处:IMWeb社区 未经同意,禁止转载 fis3 新特性应用 1 前言 fis3相比fis2,核心思路并没有改变 还是围绕3个核心做处理: 资源嵌入 资源定位...fis3相对于fis2来说,用户更容易使用,给插件开发者提供更多的能力 这主要体现于以下两点: 类似css的覆盖式配置方式,不需要用命令行参数来进行配置 提供许多事件锚点 这篇文章主要介绍的就是第2点,...讲解fis3提供的特殊事件,及其作用。...都会先抛出一个事件 这些节点的意义也非常深远,甚至可以改变fis3的compile流程,同样笔者也举两个例子 4.1 不需要两个插件!...后续 可以看到,fis3最重大的改进就是提供了更多的想象空间给插件开发者 合理利用这些特性,我们可以在fis3的环境下做许多事情 但就只有这些吗? No!还有另外一些更加有趣更加开放的特性还没介绍。

50820

简单介绍下modJS

发布编译时,由构建工具统一添加define包裹,自动添加模块id(默认根据路径生成,也可以在fis3的配置中声明格式)。整体的开发体验更好一些。...---- 一般情况下,modJS配合fis3已经可以满足大部分需求,并且官方还提供了完整支持amd规范的esl-mod.js。...而modJS设计之初,便考虑到稍微大型点的前端项目都会打包模块js减少请求优化性能,依赖的模块其实早已合并打包,并不需要在define中声明后再异步加载。...以我们的项目为例,首次加载时,会加载3个打包的js文件,分别是基础库(modjs、jquery、badjs)、base.js(其他打包的通用模块,初始化一些变量)、mod.main.js(当前页面用到的逻辑打包...当用户点击其他页面(非刷新)时,再异步加载该页面用到的mod.main.js(其他页面打包合并后的js),这部分js的模块id和url由构建工具统一打到resourceMap中。

76650

fis3 新特性应用

本文作者:IMWeb 黎清龙 原文出处:IMWeb社区 未经同意,禁止转载 fis3 新特性应用 1 前言 fis3相比fis2,核心思路并没有改变 还是围绕3个核心做处理: 资源嵌入 资源定位...fis3相对于fis2来说,用户更容易使用,给插件开发者提供更多的能力 这主要体现于以下两点: 类似css的覆盖式配置方式,不需要用命令行参数来进行配置 提供许多事件锚点 这篇文章主要介绍的就是第2点,...讲解fis3提供的特殊事件,及其作用。...都会先抛出一个事件 这些节点的意义也非常深远,甚至可以改变fis3的compile流程,同样笔者也举两个例子 4.1 不需要两个插件!...后续 可以看到,fis3最重大的改进就是提供了更多的想象空间给插件开发者 合理利用这些特性,我们可以在fis3的环境下做许多事情 但就只有这些吗? No!还有另外一些更加有趣更加开放的特性还没介绍。

69790

如何编写fis3插件

本文作者:IMWeb helondeng 原文出处:IMWeb社区 未经同意,禁止转载 目前业务正在逐步迁移到fis3和lego,有许多和业务相关的fis插件需要处理。...参考这里 单元测试 fis3一个很大的优势是提供了单元测试的接口,写完插件后,记得要用单元测试过下,同时这也是一个调试的过程(fis2的调试只能依赖具体的项目),主体的代码架构是: var fs = require...('fs'), path = require('path'), fis = require('fis3'), _ = fis.util, expect = require...chai').expect, // 下面这两个库是提供测试的关键库,用于release _release = fis.require('command-release/lib/release.js...'), _deploy = fis.require('command-release/lib/deploy.js'), // 自己编写的插件入口文件 iconfont = require

50810
领券