fxp / composer-asset-plugin
Composer 的 NPM/Bower 依赖管理器
Requires
- php: >=5.3.3
- composer-plugin-api: ^1.0
Requires (Dev)
- composer/composer: ^1.6.0
This package is auto-updated.
Last update: 2024-09-19 20:00:02 UTC
README
Composer 资产插件允许您在不安装 NPM 或 Bower 的情况下,在您的 composer.json
中管理项目资产(css、js 等)。
此插件通过将 NPM 或 Bower 的包信息转换成与 Composer 兼容的版本来工作。这使得您能够非常容易地在基于 PHP 的项目中管理资产依赖关系。
重要
Composer 资产插件的下一个主要版本与当前版本有很大不同,且不兼容,因此它成为了一个名为 Foxy 的新项目。
Foxy 是管理 PHP 库资产的新方法,因为它与 NPM 或 Yarn 的所有功能原生兼容。然而,这个插件将继续由社区维护,但不会有新功能。
您可以阅读 这个新版本的原因,或者 Foxy 与 Fxp Composer Asset 插件之间的区别,以及 Foxy 的工作方式。
功能包括
- 与 composer 的 VCS 仓库的原生管理系统版本协同工作
- 与公共和私有 VCS 仓库协同工作
- 通过延迟加载资产包定义来提高性能
- 具有根包和已安装包依赖关系的导入过滤器,大大提高了更新性能
- 自动获取和创建在
- 自动获取和创建每个资产包中定义的依赖关系的资产 VCS 仓库(包括开发依赖项)
- 将资产包映射到 composer 包以用于
- 将 Semver 版本 转换为 composer 版本
- 将 Semver 范围版本 转换为 composer 范围版本
- 将 带有 URL 的依赖关系 转换为 composer 依赖关系,并通过创建 VCS 仓库来创建
- 将 同一项目中同一依赖关系的多个版本 转换为 composer 的不同依赖关系
- 手动添加项目中相同依赖项的多个版本(请参阅此处)
- 添加自定义VCS仓库配置
- 直接在根composer的配置部分覆盖由资产注册表定义的VCS仓库配置
- VCS驱动程序
- 本地缓存系统用于
- 包版本
- 包内容
- 仓库重定向
- 在根文件
composer.json
中可配置的自定义资产安装程序 - 对于Bower,所有在
ignore
部分定义的文件都不会被安装 - 禁用或替换Bower的忽略文件删除
- 手动启用NPM的忽略文件删除
- 在Composer脚本中使用忽略文件管理器
- 按项目、全局或使用环境变量配置插件
- 与所有命令兼容,包括
depends
diagnose
licenses
remove
require
search
(仅Bower)show
status
为什么需要这个插件?
已经有几种方法可以管理PHP项目中的资产
- 安装Node.js并使用NPM或Bower命令行,除了Composer命令行
- 执行#1,但添加Composer脚本来自动化这个过程
- 直接将资产包含在项目中(不推荐)
- 创建包含所有资产的仓库并包含
composer.json
文件(并使用Packagist或VCS仓库) - 在
composer.json
中添加包含直接下载链接的包仓库 - 创建Satis或Packagist服务器
- 还有其他方法吗?
不言而喻,每个javascript、CSS等库都应使用该语言的常用工具进行开发,这是前端开发者所熟知的。然而,在一个完整的PHP项目中,没有必要使用多个工具(PHP、Nodejs、Composer、NPM、Bower、Grunt等)来简单地在项目中安装这些资产。
此插件旨在解决这些问题。此外,大多数开发人员不会只为支持基于PHP的项目而将composer.json
文件添加到他们的项目中,尤其是当npm和/或Bower已经存在并被广泛使用时。
文档
大部分文档位于Resources/doc/index.md
安装
所有安装说明均位于文档中。
许可证
此Composer插件受MIT许可证的约束。有关完整许可证,请参阅
关于
Fxp Composer Asset Plugin是François Pluchino的倡议。还可以参考贡献者列表。
报告问题或功能请求
问题和功能请求在Github问题跟踪器中进行跟踪。