pantheon-se / node-composer
将 Node.js、NPM 和 Yarn 安装到 vendor/bin
v2.1.6
2023-07-12 20:55 UTC
Requires
- php: >=7.1
- composer-plugin-api: >=2.0
- ext-json: *
- ext-zip: *
- composer/composer: >=2.0
- symfony/process: >=3.3
README
Node Composer
Composer 插件,通过 Node.js 实现通过 Composer 进行资源编译。
基于 mariusbuescher 的 node-composer,此 Composer 插件将安装 Node.js、NPM 和/或 Yarn 到您的 vendor/bin 目录,以便在 Composer 构建过程中使用。此插件有助于自动化下载与您的 composer.json 中指定的 bin 目录链接的二进制文件。
安装完成后,您可以在 composer-scripts 中使用 Node、NPM 和 Yarn 命令。
设置
只需安装插件,最新版本的 Node.js LTS 与 NPM 便会自动安装 - 无需其他配置。可选地,您可以在 composer.json 的额外配置中指定 node-version 以声明 Node.js 的特定版本。对于 Yarn,yarn-version 可以设置为 true 以安装最新版本,也可以设置为特定版本。
带有 Yarn 的示例 composer.json
{
"name": "my/project",
"type": "project",
"license": "MIT",
"require": {
"pantheon-se/node-composer": "*"
},
"extra": {
"pantheon-se": {
"node-composer": {
"yarn-version": true
}
}
},
"config": {
"allow-plugins": {
"pantheon-se/node-composer": true
}
},
"scripts": {
"post-install-cmd": ["@build"],
"post-update-cmd": ["@build"],
"build": "cd web/themes/my_theme && yarn build"
}
}
配置
您可以选择配置以下三个参数
- Node 版本 (
node-version) - Yarn 版本 (
yarn-version) - Node.js 二进制存档的下载 URL 模板 (
node-download-url)。
在 Node 下载 URL 中,将以下占位符替换为您特定的需求
- 版本:
${version} - 您的操作系统类型:
${osType} - 系统架构:
${architecture} - 文件格式
${format}
带有特定 Node 和 Yarn 版本的示例 composer.json
{
"extra": {
"pantheon-se": {
"node-composer": {
"node-version": "16.14.0",
"yarn-version": "1.22.18",
"node-download-url": "https://node.org.cn/dist/v${version}/node-v${version}-${osType}-${architecture}.${format}"
}
}
}
}