我正在设置一个composer.json
文件以自动执行时运行某些任务。
脚本看起来像这样:
"scripts": {
"post-update-cmd": [
"@createDir",
"@installSlate",
"@installConcat"
],
"createDir": "npm install -g @shopify/slate",
"installSlate": "slate theme blank_theme",
"installConcat": "npm install grunt-contrib-concat --save-dev"
}
这有效,但它将GRUNT插件安装在根文件夹中,而不是在blank_theme
中。我尝试添加;
"installConcat": "cd blank_theme npm install grunt-contrib-concat --save-dev"
或在其中添加另一个命令以转到 blank_theme
目录,所以类似;
"scripts": {
"post-update-cmd": [
"@createDir",
"@installSlate",
"@moveDir",
"@installConcat"
],
"createDir": "npm install -g @shopify/slate",
"installSlate": "slate theme blank_theme",
"moveDir": "cd blank_theme",
"installConcat": "npm install grunt-contrib-concat --save-dev"
}
但没有运气。有什么想法如何实现?
它发生了,因为命令: npm install package_name 在当前目录或最近的父级目录中安装指定的软件包,其中present poffage.json文件。如果您需要在指定的目录中安装某个设备,则可以将其放置在此处。
作为建议,我可以说:从您的命令中删除 - Save-Dev 。此子命令的认罪是将您安装到package.json的依赖项中添加内容。通常,当我懒惰地将此依赖性写入包装时,我会在开发过程中使用此命令。在您的作曲家您在此子命令中没有必要;
我最终都这样解决了,以防万一它可以帮助任何人
"installConcat": "npm install --prefix blank_theme grunt-contrib-concat --save-dev"