https://www.youtube.com/watch?v=Fa4cRMaTDUI 私はこのレッスンを見て、作者が行うすべてのことを再現しようとしています。 19:00に、彼はvue.js-express.jsプロジェクトを設定します。彼は「サーバー」というフォルダーを作成します。 'server /'で、彼は 'npm init-f'を実行します。次に、「npm install --save nodemon eslint」、次にeslintを初期化します。次に、package.jsonファイルに次のように書き込みます。
"scripts": {
"start": "nodemon src/app.js --exec 'npm run lint && node'",
"lint": "eslint **/*.js"
}
次に、フォルダ「server」にフォルダ「src」を作成します。 'src'で、彼は 'app.js'を作成します。そして 'app.js;単純なconsole.log( 'hello')があります。次に、「npmstart」を実行します。 「Hello」はターミナルに出力され、nodemonとeslintは問題なく動作します。次に、「npm install --saveexpress」と入力します。それが私の問題の始まりです。 express.jsをインストールした後、「npm start」と入力すると、ターミナルで次のエラーが発生します。
Oops! Something went wrong! :(
ESLint: 5.0.0.
No files matching the pattern "node_modules/ipaddr.js" were found.
Please check for typing mistakes in the pattern.
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR! [email protected] lint: `eslint **/*.js`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the [email protected] lint script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/r/.npm/_logs/2018-06-25T10_32_02_027Z-debug.log
[nodemon] process failed, unhandled exit code (2)
[nodemon] Error
at Bus.utils.bus.on (/home/r/projects/tab-tracker/server/node_modules /nodemon/lib/nodemon.js:148:25)
at Bus.emit (events.js:164:20)
at ChildProcess.<anonymous> (/home/r/projects/tab-tracker/server/node_modules/nodemon/lib/monitor/run.js:164:11)
at ChildProcess.emit (events.js:159:13)
at Process.ChildProcess._handle.onexit (internal/child_process.js:209:12)
なんでこんなことが起こっているの?
コメントの@joknaweは正解でした、ありがとう。編集:
Node_modulesディレクトリをリントしようとしているようです。これはデフォルトでは無視されますが、ワイルドカード**/*。jsが問題の原因である可能性があります。 eslintを使用してみてください
パターンを引用すると、以前のバージョンのeslintと同様に正常に機能します
"lint": "eslint \"**/*.js\""
クレジットは https://github.com/eslint/eslint/issues/10599 に送られます
.eslint.jsファイルでは、このコードを置き換える必要があります
前
"browser": true
後
"node": true
コードを置き換えます
"start": "nodemon src/app.js --exec 'npm run lint && node'",
"lint": "eslint **/*.js"
for
"start": "nodemon src/app.js --exec 'npm run lint && node'",
"lint": "eslint"
私はWSLを使用しており、次の行を変更して修正しました。
前
"start": "./node_modules/nodemon/bin/nodemon.js src/app.js --exec 'npm run lint && node'",
"lint": "./node_modules/.bin/eslint **/*.js"
後
"start": "./node_modules/nodemon/bin/nodemon.js src/app.js --exec 'npm run lint && node'",
"lint": "./node_modules/.bin/eslint src/**/*.js --fix"
ワイルドカードの前後に引用符を追加するだけです**/*.js
。
"scripts": {
"start": "nodemon src/app.js --exec 'npm run lint && node'",
"lint": "eslint **/*.js"
}
Macでは、次の行を変更するだけで修正しました
前
"lint": "" lint ":" ./node_modules/.bin/eslint **/*。js ""
後
"lint": "./node_modules/.bin/eslint src/*。js"