0.7.23 • Published 7 months ago

airs v0.7.23

Weekly downloads
6
License
MIT
Repository
github
Last release
7 months ago

serve static files in the air

在线解析压缩合并Less,打包压缩Javascript.

安装

npm install airs -g

yarn global add airs

使用

直接执行air启动http server

air -p 9090 指定端口

air -d /tmp/ 指定根目录

所有less文件改为css后缀访问直接现场解析

类似于nginx的ssi(server side include)功能自动启用

可以使用连字符将资源合并

连字符的优先级高于配置文件

文件查找解析优先级高于配置文件

less文件解析和配置文件优先级高于静态文件

对于js文件

同名静态文件的优先级高于配置文件.

对于js,css

优先级: 连字符>配置文件>静态文件

命令

air serve

开启http server

与直接执行air一样

air compress

压缩less,javascript

后面可以跟文件列表,将会处理less和js后缀文件

air compress hello.less hi.less jquery.js etpl.js

--debug 以debug模式压缩

--clean 更强的压缩模式,清除console,debugger等

break change

https://github.com/less/less.js/releases/tag/v4.0.0

less 4.0 开始, math 默认值发生了改变, 除法必须使用括号了.

http://lesscss.org/usage/#less-options-math

可以使用配置文件 lessOptions 端, 还原到旧版行为

{
	"lessOptions": {
		"math": "always"
	},
	"static": {
		"js": {
			"js/all.js": [
				"js/jquery.js",
				"js/etpl.js"
			]
		},
		"css": {
			"css/style.css": [
				"css/page.less",
				"css/admin.less"
			]
		}
	}
}

lessOptions 指定 math 为 always, 行为同3.0版本

lessOptions的配置项有

math

urlArgs , 如果是启动http server方式,query上的参数urlArgs,可覆盖此配置文件值

globalVars less 的 globalVars 参数, 此配置可由 环境变量 GLOBALVARS (key=value)形式字符串

modifyVars less 的 modifyVars 参数, 此配置可由 环境变量 MODIFYVARS (配置key=value) 覆盖, 优先级 -m 参数 (使用http形式是query.modifyVars) > 环境变量 > 配置文件

air install

安装git hooks, 会将指定目录的git钩子安装到当前仓库, 当前位置必须是仓库根目录

要使用格式化和lint,需要全局安装prettier,eslint

为启用对vue的支持还需要eslint-plugin-html

async支持,还需要添加babel-eslint

yarn global add prettier eslint babel-eslint vue-eslint-parser eslint-plugin-vue

需 eslint > 5.0.0

要跳过eslint检查,使用

git commit -n

或者

git commit --no-verify

参数

-dir somedir 可以指定配置文件的目录

air lint

手动对指定文件进行格式化和lint

例如:air lint src/index.js

该命令必须在项目根目录执行,会查找当前目录下的config配置

该命令与commit时执行的命令逻辑相同

可以使用通配符 air lint src/*.js

忽略部分lint

// eslint-disable-line 对当前行忽略

// eslint-disable-next-line 对下一行忽略

/* eslint-disable */ 关闭eslint

/* eslint-enable */开启eslint

参数

-dir somedir 执行lint和格式化时可以指定配置文件所在目录

--lint 默认执行完毕后会使用git add -u再次添加此文件,此参数可以阻止该行为

air template

使用art-template模板渲染

air template tpl.html -o output.html --debug --art

加上--debug为不压缩

-o指定输出文件,如果不指定则直接输出到标准输出

--art 表示使用art-template模板,否则使用ssi

tpl.html的数据文件会在static.json配置文件中自动查找

"template": {
	"tpl.html": "data/index.json"
}

使用配置文件

http serverair compress 命令可以使用配置文件

使用配置文件需要有规则的目录结构

在根目录下建立static文件夹

在static目录内建立static.json文件,配置Less和Javascript映射

static.json

{
	"static": {
		"js": {
			"js/all.js": ["js/jquery.js", "js/etpl.js"]
		},
		"css": {
			"css/style.css": ["css/page.less", "css/admin.less"]
		}
	}
}

此时,在static目录下执行air compress 将会将上述js文件压缩为all.js

less文件解析合并压缩为style.css

air compress可在项目中的任意文件夹位置执行

注意

被压缩的js需要为es5语法 若要使用ssi,请不要使用中文命名html文件

使用服务端模板渲染

  • 默认已支持nginx ssi 规则,且默认启用
  • 支持另一种模板 art-template

如需使用art-template模板引擎,使用air -p 8899 --art启动

同时,可以使用配置文件对模板填充数据,配置文件声明在template段内

{
	"static": {
		"js": {
			"js/all.js": ["js/jquery.js", "js/etpl.js"]
		},
		"css": {
			"css/style.min.css": ["css/page.less", "css/admin.less"]
		}
	},
	"template": {
		"index.html": "data/index.json"
	}
}

其中为index.html这个请求路径指定了模板数据,数据可使用三种格式

  • 直接在配置文件里以对象的方式声明
  • 在配置文件里指定使用一个json文件声明
  • 在配置文件里指定使用一个js文件申明,js文件需为commonJs模块化

模板文件的修改会立即生效

配置文件的修改需重启

模板数据文件的修改需重启

query 参数会自动传递给模板,如果有申明同名的模板数据则被覆盖

0.7.23

7 months ago

0.7.22

3 years ago

0.7.21

3 years ago

0.7.20

3 years ago

0.7.19

3 years ago

0.7.18

3 years ago

0.7.17

3 years ago

0.7.16

3 years ago

0.7.15

3 years ago

0.7.13

3 years ago

0.7.14

3 years ago

0.7.12

3 years ago

0.7.11

4 years ago

0.7.10

4 years ago

0.7.9

4 years ago

0.7.8

4 years ago

0.7.7

4 years ago

0.7.6

4 years ago

0.7.5

4 years ago

0.7.4

4 years ago

0.7.2

4 years ago

0.7.3

4 years ago

0.7.1

4 years ago

0.7.0

4 years ago

0.6.60

5 years ago

0.6.33

5 years ago

0.6.32

5 years ago

0.6.31

5 years ago

0.6.30

5 years ago

0.6.29

5 years ago

0.6.28

5 years ago

0.6.27

5 years ago

0.6.26

5 years ago

0.6.25

6 years ago

0.6.24

6 years ago

0.6.23

6 years ago

0.6.22

6 years ago

0.6.21

6 years ago

0.6.20

6 years ago

0.6.18

6 years ago

0.6.17

6 years ago

0.6.16

6 years ago

0.6.15

6 years ago

0.6.14

6 years ago

0.6.13

6 years ago

0.6.11

6 years ago

0.6.10

6 years ago

0.6.9

6 years ago

0.6.8

6 years ago

0.6.7

6 years ago

0.6.6

6 years ago

0.6.5

6 years ago

0.6.4

6 years ago

0.6.3

6 years ago

0.6.2

6 years ago

0.6.1

6 years ago

0.6.0

6 years ago

0.5.5

6 years ago

0.5.4

7 years ago

0.5.3

7 years ago

0.5.2

7 years ago

0.5.1

7 years ago

0.5.0

7 years ago

0.4.19

7 years ago

0.4.18

7 years ago

0.4.17

7 years ago

0.4.16

7 years ago

0.4.15

7 years ago

0.4.14

7 years ago

0.4.13

7 years ago

0.4.12

8 years ago

0.4.11

8 years ago

0.4.9

8 years ago

0.4.8

8 years ago

0.4.7

8 years ago

0.4.6

8 years ago

0.4.5

8 years ago

0.4.4

8 years ago

0.4.3

8 years ago

0.4.2

8 years ago

0.4.1

8 years ago

0.4.0

8 years ago

0.3.6

8 years ago

0.3.5

8 years ago

0.3.4

8 years ago

0.3.2

8 years ago

0.3.1

8 years ago

0.3.0

8 years ago

0.2.10

8 years ago

0.2.9

8 years ago

0.2.8

8 years ago

0.2.6

8 years ago

0.2.5

8 years ago

0.2.4

8 years ago

0.2.3

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.9

8 years ago

0.1.8

8 years ago

0.1.7

8 years ago

0.1.6

8 years ago

0.1.5

9 years ago

0.1.4

9 years ago

0.1.3

9 years ago

0.1.2

9 years ago

0.1.1

9 years ago

0.1.0

9 years ago