如何使package.json系统中的路径独立?

时间:2018-02-13 12:18:07

标签: json node.js

我正在学习edx上的nodejs并偶然发现以下问题。如果在npm start中添加了命令,则可以通过package.json运行快速应用程序(或其他应用程序):

{
  "name": "express-hello-world",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": ".\\node_modules\\.bin\\node-dev server.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "express": "^4.16.2",
    "node-dev": "3.1.3"
  }
}

在这里,我使用带有反斜杠的路径的windows样式。但是,如果我想在不同的平台上部署包,该怎么办?我必须指定多个路径吗?因为我无法在json文件中运行类似path.join的内容吗?

以(至少)在W10,Linux,MacOS上运行的方式指定此路径的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

脚本中的二进制文件将由内部的npm解析,因此您可以:

"scripts": {
    "start": "node-dev server.js"
},

即使它没有全局安装也应该有效

documentation here

中提到过