mouf/nodejs-installer

一个安装包,允许您将 NodeJS 和 NPM 作为 Composer 依赖项安装。

安装次数: 623,664

依赖者: 16

建议者: 0

安全: 0

星标: 107

关注者: 17

分支: 30

开放性问题: 11

类型:composer-plugin

v1.0.14 2020-11-04 08:03 UTC

This package is auto-updated.

Last update: 2024-09-04 17:25:52 UTC


README

Latest Stable Version Latest Unstable Version License Scrutinizer Code Quality

Composer 的 NodeJS 安装器

这是一个安装器,它将下载 NodeJS 和 NPM 并将其安装到您的 Composer 依赖项中。如果您的机器上已经安装了 NodeJS,则将跳过安装。

为什么?

NodeJS 越来越多地成为现代网络开发者工具链的一部分。像 Bower、Grunt、Gulp 这样的工具每天都被用来构建应用程序。对于 PHP 开发者来说,这意味着 PHP 项目有构建依赖项 NodeJS 或 Bower / NPM 包。NodeJS-installer 试图通过使 NodeJS 作为 Composer 依赖项轻松安装来弥合 NodeJS 和 PHP 之间的差距。

基于此包,其他包如 koala-framework/composer-extra-assets 可以用于自动获取 Bower / NPM 包,运行 Gulp / Grunt 任务等...

它是如何工作的?

只需在您的 composer.json 要求中包含此包即可

{
    "require": {
        "mouf/nodejs-installer": "~1.0"
    }
}

默认情况下,如果您的计算机上没有 NodeJS,它将被下载并安装到 vendor/nodejs/nodejs

您应该通过 vendor/bin 目录中创建的脚本访问 NodeJS 和 NPM

  • vendor/bin/node (Windows 上的 vendor/bin/node.bat
  • vendor/bin/npm (Windows 上的 vendor/bin/npm.bat

选项

有一些选项可用于自定义 NodeJS 安装

{
    "require": {
        "mouf/nodejs-installer": "~1.0"
    },
    "extra": {
        "mouf": {
            "nodejs": {
                "version": "~0.12",
                "targetDir": "vendor/nodejs/nodejs",
                "forceLocal": false
            }
        }
    }
}

可用选项

  • version:这是将要下载和安装的 NodeJS 版本号。您可以使用通常的 Composer 格式指定版本约束(例如 “~0.12” 或 “>0.11”)。
    默认值:* 默认安装最新稳定版本的 NodeJS。
  • targetDir:NodeJS 将安装的目标目录。相对于项目根目录。
    此选项仅在根包中可用。
    默认值:vendor/nodejs/nodejs
  • forceLocal(布尔值):如果设置为 true,即使 NodeJS 已在您的计算机上可用,也会始终下载并本地安装 NodeJS。
    此选项仅在根包中可用。
    默认值:false
  • includeBinInPath(布尔值):在插件在 Composer 中运行后,可以可选地将 vendor/bin 目录添加到 PATH。如果其他插件依赖于计算机上全局可用的“node”或“npm”,则这很有用。使用此选项,这些其他插件将自动找到已下载的 node/npm 版本。请注意,PATH 仅在 Composer 脚本运行期间设置。此选项不会影响您的全局环境。
    此选项仅在根包中可用。
    默认值:false

自定义脚本

安装器监听以下 composer 脚本以启动

{
    "post-install-cmd": {
        // ...
    },
    "post-update-cmd": {
        // ...
    }
}

如果您需要手动启动安装器,可以运行以下命令

$ composer run-script download-nodejs