fxp/composer-asset-plugin

Composer 的 NPM/Bower 依赖管理器

安装数: 4,714,193

依赖者: 65

建议者: 5

安全: 0

星标: 893

关注者: 59

分支: 156

开放问题: 14

类型:composer-plugin

v1.4.6 2019-08-08 18:36 UTC

README

Latest Version Build Status Coverage Status SymfonyInsight Packagist Downloads

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项目中的资产

  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问题跟踪器中进行跟踪。