ezijing/composer-asset-plugin

Composer 的 NPM/Bower 依赖管理器

dev-main 2020-10-30 11:34 UTC

This package is not auto-updated.

Last update: 2024-09-29 06:41:11 UTC


README

Latest Version Build Status Coverage Status Scrutinizer Code Quality SensioLabsInsight Packagist Downloads

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 项目中管理资产的方法了

  1. 安装 Node.js 并使用 NPM 或 Bower 命令行(除了 Composer 命令行)
  2. 做 #1,但添加 Composer 脚本来自动化过程
  3. 直接在项目中包含资产(不推荐)
  4. 创建包含所有资产的仓库并包含 composer.json 文件(并使用 Packagist 或 VCS 仓库)
  5. composer.json 中添加一个包含直接下载链接的包仓库
  6. 创建 Satis 或 Packagist 服务器
  7. 其他?

不言而喻,每个 JavaScript、CSS 等库都应该使用该语言通常的工具进行开发,这是前端开发者所熟知的。然而,在 PHP 完整项目中,不应该需要使用多个工具(PHP、Nodejs、Composer、NPM、Bower、Grunt 等)来简单地安装这些资产到你的项目中。

此插件已创建来解决这个问题。此外,大多数开发者不会只为支持基于 PHP 的项目而在项目中添加 composer.json 文件,尤其是当 npm 和/或 bower 已经存在并被广泛使用时。

文档

大部分文档位于 Resources/doc/index.md

阅读文档

阅读常见问题解答

阅读发行说明

安装

所有安装说明均位于 文档 中。

许可

此 Composer 插件受 MIT 许可证的约束。请参阅完整的许可证

LICENSE

关于

Fxp Composer Asset Plugin 是 François Pluchino 的倡议。还可以查看 贡献者列表

报告问题或功能请求

问题和功能请求在 Github 问题跟踪器 中跟踪。