infrajs/config-search

该软件包已被 弃用 且不再维护。作者建议使用 infrajs/config 软件包。

1.1.7 2017-02-21 20:41 UTC

This package is auto-updated.

Last update: 2019-03-28 06:37:54 UTC


README

短地址 - 支持配置文件的扩展文件夹的短地址 .infra.json

使用短地址 "-" 搜索文件 $src = Path::theme('-plugin/test.js') 将在包含 .infra.json 的文件夹中进行。

例如,如果文件夹 vendor/name/plugin/ 中有 .infra.jsontest.js,则路径 -plugin/test.js 将映射到文件 vendor/name/plugin/test.js

在项目根目录的 .infra.json 中,也可以使用短名称扩展名,无需指定完整地址 vendor/name/plugin

{
	"plugin":{
		"js":"test.js"		
	}
}

所有安装的带有配置文件 .infra.json 的扩展文件和文件夹将通过短地址 -plugin/folders/file.ext 可用,其中 "-" 隐藏部分地址,这些地址由该扩展准备。

扩展增强了 infrajs/path 的功能。在 Path::$conf['search'] 数组中添加支持通过文件 .infra.json 进行配置的生产商的地址。

使用方法

扩展自动作为依赖项安装 infrajs/router,无需配置。

独立使用

对于知道自己在做什么的人来说...

\infrajs\config\Search::init(); //Наполнит Path::$conf['search'] новыми путями

描述

默认情况下,使用 - 搜索文件的路径仅指定了一个 vendor/infrajs/,这对于收集所有必要的依赖项就足够了。

某些路径 被缓存,缓存与 composer.lock 文件更改的日期绑定。

工作原理 - 遍历项目中的所有文件夹,并将所有包含 .infra.json 文件的文件夹添加到 config.path.search 中。

  • .infra.json - 根目录已处理,忽略
  • dir/.infra.json - 没有明显的生产商,忽略,路径本身就会起作用 -dir/file.ext
  • dir1/dir2/.infra.json - 将添加路径 dir1/ 到搜索中,并将工作路径设置为 "-dir2/file.ext"
  • dir1/dir2/dir3/.infra.json - 将添加路径 dir1/dir2/ 到搜索中,并将工作路径设置为 "-dir3/file.ext"

找到的路径被添加到 config.path.search 的末尾。

有些文件夹包含常用的文件,但不包含 .infra.json

  • vendor/components/
  • vendor/twbs/
  • bower_components/ 可以在项目根目录的手动指定 .infra.json
{
	"path":{
		"search":[
			"vendor/components/",
			"vendor/twbs/",
			"bower_components/"
		]
	}
}

禁用扩展

在不使用 config-search 扩展的情况下,所有路径都需要手动在根目录的 .infra.json 中列出。如果已安装该扩展,则可以通过在根目录的 .infra.json 中使用 off 参数来禁用其使用。

{
	"config-search":{
		"off":true
	}
}