reb/webcollector

用于收集CSS和JS文件的简单收集器

v1.0.0 2018-03-15 14:19 UTC

This package is not auto-updated.

Last update: 2024-09-21 09:47:05 UTC


README

这是用于轻松收集网页资源到生产环境的工具。收集器能够编译"less"和"sass" CSS文件并将其压缩。它还能压缩JS文件。您需要的是将"collector"和"collections.json"文件复制到应用程序的根目录。

[
	{
		"name": "REBUS", // name collection
		"base_url": "/", // url
		"root_dir": "/var/www/myapp/" // root directory, fill if you collection locate to another dir
		"compiled_dir": "~public/compiled/", // directory where put collect files
		
		/*
		* use WebCollector\Filter as Filter;
		*
		*	class Less extends Filter {
		*	}
		*/
		"filters": [ //external filters 
			{
				"name": "less",
				"class": "\\Reb\\Less"
			}
		],
		
		
		/*
		* use WebCollector\Transport as Transport;
		*
		*	class Ftp extends Transport {
		*		public function send(){}
		*
    		*	  	public function delete(){}
		*	}
		*/
		"transport": {
			"class": "File",
			"parameters": {
				"name": "Test"
			}
		},
		
		//Bundle css 
		"css": [
			{
				"file": "css/rebus-{d}.css", //name file can use {hash} or {d}{m}{y}{Y}{H}{i}{s}
				"version": "{Y}{m}{d}{H}",
				"minify": true,
				"source": [
					{
						"file": "public/css/main.less",
						"filters": [{
							"name": "less",
							"params": {
								"import_dir": "public/css/import/"
							}
						}]
					},
					{
						"dir": "public/css/scss/",
						"regex": "/^(.*.scss)$/i",
						"filters": ['scss']
					}
				]
			}
		],
		
		//Bundle js 
		"js": [
			{
				"file": "js/rebus.js",
				"minify": true,
				"source": [
					{
						"file": "public/js/main.js",
						"filters": ["less"]
					}
				]
			}
		],
		
		//Copy resources
		"copy": [
			{
				"from": "public/img/",
				"regex": "/^(.*.jpg)$/i",
				"to": "img/"
			}
		]
	}
]

控制台命令"php ./collector" - 编译所有集合。

控制台命令"php ./collector {collection name}" - 编译当前集合。

在我们的应用程序中,您可以使用类WebCollector\Web

 \WebCollector\Web::getInstance()->CSS(name collection);
 \WebCollector\Web::getInstance()->JS(name collection);