如何将自定义脚本添加到运行 javascript 文件的 package.json 文件中?

新手上路,请多包涵

我希望能够在将运行 script1 的项目目录中执行命令 node script1.js

script1.js 是同一目录中的文件。该命令需要特定于项目目录,这意味着如果我将项目文件夹发送给其他人,他们将能够运行相同的命令。

到目前为止,我已经尝试添加:

"scripts": {
    "script1": "node script1.js"
}

到我的 package.json 文件,但是当我尝试运行 script1 时,我得到以下输出:

zsh: command not found: script1

有谁知道将上述脚本添加到项目文件夹所需的步骤?

*注意:该命令不能添加到 bash 配置文件中(不能是特定于机器的命令)

如果您需要任何澄清,请告诉我。

原文由 Jake.JS 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.5k
2 个回答

自定义脚本

npm run-script <custom_script_name>

或者

npm run <custom_script_name>

在您的示例中,您需要运行 npm run-script script1npm run script1

请参阅 https://docs.npmjs.com/cli/run-script

生命周期脚本

Node 还允许您为某些生命周期事件运行自定义脚本,例如在 npm install 之后。这些可以在 这里 找到。

例如:

 "scripts": {
 "postinstall": "electron-rebuild",
 },

这将在 npm install 命令之后运行 electron-rebuild

原文由 wesleysmyth 发布,翻译遵循 CC BY-SA 3.0 许可协议

我创建了以下内容,它正在我的系统上运行。请试试这个:

包.json:

 {
  "name": "test app",
  "version": "1.0.0",
  "scripts": {
    "start": "node script1.js"
  }
}

脚本1.js:

 console.log('testing')

从命令行运行以下命令:

 npm start

其他用例

我的 package.json 文件通常包含以下脚本,这使我能够查看我的文件中的 typescript、sass 编译和运行服务器。

  "scripts": {
    "start": "concurrently \"sass --watch ./style/sass:./style/css\" \"npm run tsc:w\" \"npm run lite\" ",
    "tsc": "tsc",
    "tsc:w": "tsc -w",
    "lite": "lite-server",
    "typings": "typings",
    "postinstall": "typings install"
  }

原文由 Sujeet Jaiswal 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题