web-dev-qa-db-ja.com

Express.js + lintは間違いを犯します

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)

なんでこんなことが起こっているの?

5
neku894

コメントの@joknaweは正解でした、ありがとう。編集:

Node_modulesディレクトリをリントしようとしているようです。これはデフォルトでは無視されますが、ワイルドカード**/*。jsが問題の原因である可能性があります。 eslintを使用してみてください

2
neku894

パターンを引用すると、以前のバージョンのeslintと同様に正常に機能します

"lint": "eslint \"**/*.js\""

クレジットは https://github.com/eslint/eslint/issues/10599 に送られます

17

.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"
0
Giovanni Aranda

私は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"
0
syamsi

ワイルドカードの前後に引用符を追加するだけです**/*.js

"scripts": {
    "start": "nodemon src/app.js --exec 'npm run lint && node'",
    "lint": "eslint **/*.js"
}
0
Jerry Nwosu

Macでは、次の行を変更するだけで修正しました

"lint": "" lint ":" ./node_modules/.bin/eslint **/*。js ""

"lint": "./node_modules/.bin/eslint src/*。js"

0
ScyGeek