Composer post-autoload-dump for dev

Composer post-autoload-dump for dev

我正在使用 composer post-autoload-dump 功能,但我想要它的两个版本,一个在我们需要开发工具时使用,一个在我们不需要时使用。

更具体地说,在 post-autoload-dump 列表中,我们有两个命令在下面的代码片段中使用 composer install --no-dev 时不想 运行,它是 @php artisan ide-helper:generate@php artisan ide-helper:meta 命令,因为如果这些开发包不存在,这会中断执行

"scripts": {
    "post-autoload-dump": [
      "Illuminate\Foundation\ComposerScripts::postAutoloadDump",
      "@php artisan package:discover --ansi",
      "@php artisan ide-helper:generate",
      "@php artisan ide-helper:meta"
    ],
}

所以我正在寻找类似的东西:

"post-autoload-dump": [
    "Illuminate\Foundation\ComposerScripts::postAutoloadDump",
    "@php artisan package:discover --ansi"
],
"post-autoload-dump-dev": [
    "@php artisan ide-helper:generate",
    "@php artisan ide-helper:meta"
]

在 Laravel 的情况下,我只是创建了自己的命令并在其中执行了我的逻辑。基本上 if(class_exists('\The\Class')) 然后 运行 命令,否则不要。

"post-autoload-dump": [
    "Illuminate\Foundation\ComposerScripts::postAutoloadDump",
    "@php artisan setup:post-autoload-dump"
],