运行 powershell 命令的节点脚本

问题描述 投票:0回答:1

目前在本地开发时,我运行我的 MongoDB 并启动 Nodemon。我在 vscode 终端中执行此操作,但我从来不记得这些命令,所以我有一个 txt 文件,我每次都从中复制/粘贴。我想知道是否可以在我的 package.json 中设置一个脚本,我可以调用它来为我运行这些脚本。

我尝试使用 how to execute powershell ps1 scripts from package.json "scripts"? 的答案作为示例,但因为我无法弄清楚。我目前正在做的两件事是:

启动 MongoDB

& 'C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe'

启动Nodemon。我在这里也将 node_env 设置为 development

$env:NODE_ENV="development"
nodemon server/server.js

我已经按照目前的方式做了几个月,所以这没什么大不了的。我只是想知道是否有一种更简单的方法可以在不复制/粘贴命令的情况下启动它们。

node.js mongodb powershell npm nodemon
1个回答
0
投票

我刚刚发现这个问题并使用您链接的问题这是我的解决方案:

创建两个脚本:

"scripts": {
  "powershell": "@powershell -NoProfile -ExecutionPolicy Unrestricted -Command ./run_dev.ps1",
  "start": "nodemon server/server.js"
}

使用以下行在与我的

run_dev.ps1
相同的目录中创建
package.json

$env:NODE_ENV="development"; npm start

因此,当您运行

npm run powershell
时,它会在同一个终端内运行 powershell 文件和 nodemon,并正确设置 env - 在我的 VS Code 终端内运行良好。我知道这个问题很老,但希望这能帮助其他人找到他们的方式。

© www.soinside.com 2019 - 2024. All rights reserved.