こんにちは!
現在、Node.js
、Express
、MySQL
を使って、WEBアプリを作成しています。
まず、環境構築を終えて、最後にESLintを導入し、コードをいじり始めたところ、ESLintでエラーが出ていました。
(Welcome to Expressのメッセージが表示されている状態)
エラー内容
確認すると、App.jsでimport
、export
している箇所でエラーが出てます。
MacBookPro:src home$ eslint app.js
/Users/home/Developer/01_internous/05_task_app/src/app.js
1:21 error 'require' is not defined no-undef
2:17 error 'require' is not defined no-undef
3:14 error 'require' is not defined no-undef
4:1 error 'module' is not defined no-undef
4 problems (4 errors, 0 warnings)
原因と対策
原因はES6: true
を設定しているため、require()、module.exportという書き方が不適切だと言われているようです。
僕の場合、ESLintの設定ファイル.eslintrc.json
を書き換えることで解決しました。
//.eslintrc.json
// 変更前
{
"env": {
"es6": true
},
}
// 変更後
{
"env": {
"es6": true,
"node": true ←←←追加
},
}
初め、正直にrequire
をimport
に全て書き換えたんですが、エラーでアプリをビルドできませんでした。。(笑)
調べてみると、node.js
環境ではimport
は未対応なんですね。(対応させる方法があるのかもしれませんが、、)
お疲れ様でした!!☕️☕️☕️