从powershell运行节点模块

时间:2017-07-05 14:53:12

标签: node.js powershell

假设我有一个安装了节点模块的文件夹。我如何使用PowerShell运行此模块?例如,我有一个安装了webpack的文件夹,我希望能够做类似的事情

node webpack

这不起作用,因为它无法找到模块。但是,如果我这样做,它会起作用:

node ".\node_module\webpack\bin\webpack.js"

但是,我无法真正使用它,因为我正在使用powershell脚本,该脚本允许用户使用操作定义json文件。例如:

{
  "type": "run-node",
  "options": {
    "module": "webpack",
    "parameters": "--configFile=config/webpack.prod.js"
  }
}

由于要执行的模块是动态的,我不知道它将在哪里(除非所有模块都安装在"。\ node_modules \ module \ bin \ module.js"?) ,所以我无法启动它。

2 个答案:

答案 0 :(得分:0)

您可以在webpack中定义package.json脚本:

"scripts": {
    "webpack": "node \"./node_module/webpack/bin/webpack.js\""
}

然后您可以使用npm run webpackyarn webpack来运行它。

答案 1 :(得分:0)

如果您尝试在node.js脚本中执行该命令,请使用__dirname变量。

__dirname(几乎)总是引用包含脚本的目录。