ezijing / 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 not auto-updated.
Last update: 2024-09-29 06:41:11 UTC
README
Composer 资产插件允许您在不安装 NPM 或 Bower 的情况下,在您的 composer.json
中管理项目资产(CSS、JS 等)。
此插件通过将包信息从 NPM 或 Bower 转换为与 Composer 兼容的版本来工作。这使得您能够非常容易地在基于 PHP 的项目中管理资产依赖项。
重要
Composer Asset Plugin 的下一个主要版本与当前版本差异很大,且不兼容,因此它成为了一个名为 Foxy 的新项目。
Foxy 是管理 PHP 库资产的新方式,因为它能够与 NPM 或 Yarn 的所有功能原生地工作。然而,此插件将继续由社区维护,而不会有新功能。
您可以通过这个新版本的原因、Foxy 和 Fxp Composer Asset Plugin 的区别以及Foxy 的工作方式来了解这些信息。
功能包括
- 与 composer 的 VCS 仓库的本地管理系统版本兼容
- 与公共和私有 VCS 仓库兼容
- 资产包定义的懒加载以改善性能
- 导入过滤器具有根包和已安装包的依赖关系,显著提高了更新的性能
- 自动获取和创建在
- 自动获取和创建每个资产包中定义的依赖关系的资产 VCS 仓库(包括开发依赖项)
- 将资产包映射到 composer 包以用于
- 将 Semver 版本 转换为 composer 版本
- 将 Semver 范围版本 转换为 composer 范围版本
- 将 具有 URL 的依赖关系 转换为具有创建 VCS 仓库的 composer 依赖关系
- 将 同一项目的多个版本依赖关系 转换为不同的 composer 依赖关系
- 手动添加项目中相同依赖关系的多个版本
- 在根 composer 的配置部分中添加 VCS 仓库的 自定义配置
- 覆盖由资产注册表定义的 VCS 仓库的 配置
- VCS 驱动程序
- 本地缓存系统用于
- 包版本
- 包内容
- 仓库重定向
- 在根文件
composer.json
中可配置的自定义资产安装器 - 对于 Bower,在
ignore
部分中定义的所有文件将不会安装 - 禁用或替换 Bower 中忽略文件的删除
- 手动启用 NPM 中忽略文件的删除
- 在 Composer 脚本中使用 Ignore Files Manager
- 按项目、全局或使用环境变量配置插件
- 兼容所有命令,包括
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 问题跟踪器 中跟踪。