Update README.md
基于FIS的纯前端模块化解决方案pure。
建议刚接触这个方案的同学直接使用 FIS3 而非 pure,FIS3可以更轻松的实现 pure 的功能。
pure是基于FIS二次封装能力封装而成的解决方案,可以直接使用,也可以参考fis-pure自行封装或组合使用插件来构建属于自己的一体化解决方案。
因为很重要,所以写在最前面
如果希望在pure的基础上添加自己的目录规范,即修改 roadmap.path 时,不可以 使用fis.config.merge或者fis.config.set,而必须按照下面的方式进行配置
roadmap.path
fis.config.get('roadmap.path').unshift({ reg: 'map.json', release: false });
roadmap的配置具体可以参考 roadmap详解
define
使用 pure install 命令可以下载fis-components组件,在业务代码中可以直接通过 require 使用。
pure install
require
pure install zepto
var $ = require('zepto');
pure可以自动压缩、合并页面引用到的所有资源,配置灵活,一个命令完成性能优化,轻松实践雅虎14条优化规则。并且这一切优化无需任何后端框架或服务支持。
var template = __inline('path/to/template.tmpl');
pure server start
pure release --watch --live
安装 nodejs&npm
安装pure
npm install fis-pure -g pure -v
快速上手请参考前端模块化
开发angular应用还可以参考pure-angular-demo
如何使用模块化加载可以参考fis-pure-demo,大致需要以下几个步骤
main.js
require('main')
var $ = require('jquery')
pure release
我们经常会遇到有些应用场景需要通过运行时的变量来决定异步加载哪些模块,由于 pure 的依赖分析均在编译期完成,无法知道变量可能的值有哪些。因此为了实现这个目标,需要手动在使用变量加载异步变量的脚本中添加一些异步依赖的注释。
/** * @require.async page/detail */
pure自带了一个非常简单的目录规范
任何 目录规范、部署规范、编译规范 都是可配置的(配置代码)。
目录规范
部署规范
编译规范
如果希望调整目录规范,建议将配置代码中roadmap.path的部分整体复制到项目的fis-conf.js中再进行调整,避免配置不符合预期的问题。
内置的规范包括:
modules 目录下的js、css、less文件都是模块化文件,脚本会自动包装define,无需手动添加。使用require.async或者require加载模块的时候id与文件的对应规则是这样的:
modules
lib 目录下的文件不被认为是模块化的,请直接在页面上使用script或link标签引用。
lib
参考fis配置
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802032778号
fis-pure
基于FIS的纯前端模块化解决方案pure。
建议刚接触这个方案的同学直接使用 FIS3 而非 pure,FIS3可以更轻松的实现 pure 的功能。
pure是基于FIS二次封装能力封装而成的解决方案,可以直接使用,也可以参考fis-pure自行封装或组合使用插件来构建属于自己的一体化解决方案。
如果希望在pure的基础上添加自己的目录规范,即修改
roadmap.path时,不可以 使用fis.config.merge或者fis.config.set,而必须按照下面的方式进行配置roadmap的配置具体可以参考 roadmap详解
目录
模块化开发
define。组件生态
使用
pure install命令可以下载fis-components组件,在业务代码中可以直接通过require使用。自动性能优化
pure可以自动压缩、合并页面引用到的所有资源,配置灵活,一个命令完成性能优化,轻松实践雅虎14条优化规则。并且这一切优化无需任何后端框架或服务支持。
前端语言支持
var template = __inline('path/to/template.tmpl');引用经过了预编译的underscore模版,无需异步请求和解析。本地调试环境
pure server start就能开启本地调试服务器。pure release --watch --live实现监听文件修改,自动刷新页面等功能。更多内容可以参考辅助开发。如何使用
安装
安装 nodejs&npm
安装pure
快速上手
快速上手请参考前端模块化
开发angular应用还可以参考pure-angular-demo
模块化加载
如何使用模块化加载可以参考fis-pure-demo,大致需要以下几个步骤
main.js,在页面中则可以通过require('main')加载静态资源。 示例var $ = require('jquery')加载,在通过pure release发布后,页面就会自动加载jquery.js与main.js。使用变量来异步加载模块化代码
我们经常会遇到有些应用场景需要通过运行时的变量来决定异步加载哪些模块,由于 pure 的依赖分析均在编译期完成,无法知道变量可能的值有哪些。因此为了实现这个目标,需要手动在使用变量加载异步变量的脚本中添加一些异步依赖的注释。
目录规范
pure自带了一个非常简单的目录规范
任何
目录规范、部署规范、编译规范都是可配置的(配置代码)。内置的规范包括:
modules目录下的js、css、less文件都是模块化文件,脚本会自动包装define,无需手动添加。使用require.async或者require加载模块的时候id与文件的对应规则是这样的:lib目录下的文件不被认为是模块化的,请直接在页面上使用script或link标签引用。配置
参考fis配置
更多资料