命令 npm start "Missing script:start" 错误后

After command npm start "Missing script:start" error

当我输入 npm start 时出现以下错误;

npm ERR! Linux 4.4.0-109-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start"
npm ERR! node v4.2.6
npm ERR! npm  v3.5.2

npm ERR! missing script: start
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

以下 package.json 在另一台服务器上工作。我尝试将我的 nodejs 应用程序部署到另一个 server.I 成功安装了 nodejs 和 npm。

注意:安装npm后我的项目文件夹下没有node_modules文件夹

我的 package.json 文件是这样的;

{
  "name": "myapplication",
  "version": "1.0.0",
  "description": "myapplication",
  "main": "index.js",
  "scripts": {
    "test": "mocha",
    "dev": "pm2 start ecosystem.config.js",
    "pro": "pm2 start ecosystem.config.js --env production"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "apn": "2.1.5",
    "async": "2.5.0",
    "body-parser": "1.17.2",
    "bootstrap": "3.3.7",
    "callback2promise": "1.0.3",
    "cookie-parser": "1.4.3",
    "express": "4.15.4",
    "express-session": "1.15.5",
    "geolib": "2.0.23",
    "image-type": "3.0.0",
    "jsonwebtoken": "7.4.3",
    "jimp": "0.2.28",
    "mkdirp": "0.5.1",
    "mongoose": "4.11.9",
    "morgan": "1.8.2",
    "multer": "1.3.0",
    "node-gcm": "0.14.6",
    "nodemailer": "4.1.0",
    "shortid": "2.2.8",
    "socket.io": "2.0.3",
    "socket.io-redis": "5.2.0",
    "twitter": "1.7.1",
    "underscore-node": "0.1.2",
    "bcrypt": "1.0.3" 
  },
  "devDependencies": {
    "eslint": "4.5.0"
  }
}

在package.json文件中添加启动脚本

{
  "version": "1.0.0",
  "description": "No description",
  "main": "index.js",
  "scripts": {
    ...
    "start": "node index.js"
    ...
  },
  "license": "Unlicense",
  "private": true,
  "dependencies": {
  },
  "devDependencies": {
  }
}

要下载并安装 node_modules/ 文件夹中的所有模块,您需要使用 install 而不是 start。由于 start 没有被 npm 预定义,如果你想使用注释,你需要为它定义一个自定义脚本。

所以install是默认的下载和安装所有模块的命令,取决于你package.json:

$ npm install

在脚本字典中将 "test" 更改为 "start" 为:

  {
    "name": "myapplication",
    "version": "1.0.0",
    "description": "myapplication",
    "main": "index.js",
    "scripts": {
    "**start**": "mocha",
    "dev": "pm2 start ecosystem.config.js",
    "pro": "pm2 start ecosystem.config.js --env production"
  },
  "author": "",
  "license": "ISC",
  "dependencies": 
  {
    "apn": "2.1.5",
    "async": "2.5.0",
    "body-parser": "1.17.2",
    "bootstrap": "3.3.7",
    "callback2promise": "1.0.3",
    "cookie-parser": "1.4.3",
    "express": "4.15.4",
    "express-session": "1.15.5",
    "geolib": "2.0.23",
    "image-type": "3.0.0",
    "jsonwebtoken": "7.4.3",
    "jimp": "0.2.28",
    "mkdirp": "0.5.1",
    "mongoose": "4.11.9",
    "morgan": "1.8.2",
    "multer": "1.3.0",
    "node-gcm": "0.14.6",
    "nodemailer": "4.1.0",
    "shortid": "2.2.8",
    "socket.io": "2.0.3",
    "socket.io-redis": "5.2.0",
    "twitter": "1.7.1",
    "underscore-node": "0.1.2",
    "bcrypt": "1.0.3" 
  },
  "devDependencies": 
  {
    "eslint": "4.5.0"
  }
}

这是适合我的解决方案。我用了

"scripts": 
{
     .
     .

    "**start**": "webpack-dev-server --open",

     .
     .
}

因为我正在使用 'webpack' 作为加载程序。

只需使用以下命令在您的系统上全局重新安装 create-react-app 包,它应该可以工作。

npm install -g create-react-app

然后使用以下命令创建 React 应用程序

create-react-app <your app name>

然后转到您的应用程序目录并运行 "npm start" 命令。