как сделать проверку, используя nodemon?


Могу ли я использовать nodemon для Линта моего javascript? Я не использую какой-либо инструмент сборки, например gulp или grunt, и хочу максимально использовать node и npm.

Выходные данные nodemon могут передаваться по конвейеру . Я хочу использовать это для пылеобразования измененный файл, используя eslint.

Вот мой пакет.json

{
  "name": "app",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "nodemon server.js",
    "lint": "eslint"
  },
  "dependencies": {
    "MD5": "*",
    "clean-css": "*",
    "express": "~4.9.0",
    "express-handlebars": "~2.0.1",
    "express-redis-cache": "*",
    "foundation-sites": "~5.5.3",
    "fs-extra": "~0.8.1",
    "node-rest-client": "~1.5.1",
    "node-sass": "*",
    "path": "*"
  },
  "devDependencies": {
    "babel-eslint": "^4.1.6",
    "eslint": "^1.10.3",
    "eslint-config-airbnb": "^2.1.1",
    "eslint-config-airbnb-es5": "^1.0.8",
    "eslint-plugin-react": "^3.13.1",
    "nodemon": "~1.8.1",
    "parallelshell": "~2.0.0",
    "watch": "~0.17.1"
  }
}

Я попробовал это. Но это не так. work.It дает ошибку.

       "scripts": {
    "start": "nodemon({ script: 'server.js' }).on('restart', function () {console.log('nodemon started');}).on('crash', function () {console.log('script crashed for some reason');});",
    "lint": "eslint"
  },
3 10

3 ответа:

Вы можете использовать опцию exec nodemon для запуска тестов при сохранении кода. Вот пример:

nodemon server.js --exec 'npm run test && node'

Это приведет к запуску nodemon npm run test && node server.js, и он не запустит сервер, пока все тесты не будут успешно выполнены.

Я использую стандарт .в JS для пылеобразования и я могу получить его на работу с nodemon в package.json скрипт.

"scripts": {
  "lint": "standard",
  "dev": "nodemon ./app --exec \"npm run lint && node\""
  "start": "nodemon ./app"
}

Когда я запускаю npm run dev, любые изменения, которые я делаю, будут отслеживаться и фиксироваться. Я проверил это в Windows, используя PowerShell.

Пылеобразования является чисто процесс развития. Nodemon - это инструмент, используемый для запуска сервера и не связанный с инструментами сборки, но с запуском вашего приложения. Поэтому ответ - "нет". Вы должны использовать правильный инструмент для автоматизации разработки, такой как грунт, залпом и т. д. или просто чистые сценарии NPM (в вашем пакете.файл json).

Я бы рекомендовал использовать средства автоматизации, если ваш проект сложен,имеет много этапов и много пакетов и т. д. Тем не менее, для только линтинга, вы можете просто подготовить один лайнер в вашем НПМ package.json, например, так:

"scripts": {
    "lint": "eslint --fix src test",
}

И затем запустите его с командой: "npm run lint".

Помните, что с помощью правильно настроенного файла .eslintrc Вы можете линтовать свой код как консольными командами, так и редакторами/IDE (почти каждая широко популярная IDE имеет плагин для eslint).

Более подробную информацию о настройке eslint и создании соответствующего файла eslintrc можно найти здесь: http://eslint.org/docs/user-guide/configuring