как сделать проверку, используя 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 ответа:
Вы можете использовать опцию
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".
Помните, что с помощью правильно настроенного файла
Более подробную информацию о настройке eslint и создании соответствующего файла.eslintrc
Вы можете линтовать свой код как консольными командами, так и редакторами/IDE (почти каждая широко популярная IDE имеет плагин для eslint).eslintrc
можно найти здесь: http://eslint.org/docs/user-guide/configuring