'ESLint - 'process' is not defined
I am using ESLinter for a simple node project. Below is the only code I have in index.js:
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send({
hi: 'there'
});
});
const PORT = process.env.PORT || 5000;
app.listen(PORT);
I am using VSCode
editor. It automatically runs ESLint for JS code.
In the IDE, I see below error for last but one line -
[eslint] 'process' is not defined. (no-undef)
Any Idea what's wrong?
Solution 1:[1]
When I got error I had "browser": true
instead of "node": true
.
I have fixed this with following config for .eslintrc.json
file-
{
"env": {
"node": true,
"commonjs": true
},
"extends": "eslint:recommended",
"rules": {
"indent": [
"error",
"tab"
],
"linebreak-style": [
"error",
"unix"
],
"quotes": [
"error",
"single"
],
"semi": [
"error",
"always"
]
},
"parserOptions": {
"ecmaVersion": 2015
}
}
Thanks @FelixKling and @Jaromanda X for quick responses.
Solution 2:[2]
Adding "node": "true" to an existing list of environments will do the job, too
"env": {
"node": true,
"commonjs": true,
"browser": true,
"es6": true
}
Solution 3:[3]
Add .eslintrc file to root of your project (if you don't already have one) and define globals to ignore
{
"globals": {
"process": true
}
}
Make sure you use process.env though out the project but only in a single configuration file. Consider adding no-process-env
rule.
Solution 4:[4]
If you have eslint installed, add env: { node: true }
to the .eslintrc.js file
Solution 5:[5]
this config helped me and can help others too
{
"parser": "babel-eslint",
"parserOptions": {
"ecmaFeatures": {
"jsx": true,
"modules": true
},
"ecmaVersion": 2020,
"sourceType": "module",
"useJSXTextNode": true,
"warnOnUnsupportedTypeScriptVersion": false
},
"root": true,
"env": {
"browser": true,
"es6": true,
"node": true,
"commonjs": true
},
"extends": [ "eslint:recommended"],
},
}
Solution 6:[6]
when working on node js project. this might help you. it works in my end
module.exports = {
"env": {
"node": true,
"browser": true,
"commonjs": true,
"es6": true
},
"extends": "eslint:recommended",
"globals": {
"Atomics": "readonly",
"SharedArrayBuffer": "readonly"
},
"parserOptions": {
"ecmaVersion": 2018
},
"rules": {
}
};
Solution 7:[7]
If you are getting the error even after settng "node": true,
remember to install @types/node
with
npm i -D @types/node
yarn add -D @types/node
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | mikemaccana |
Solution 2 | crtag |
Solution 3 | t-reksio |
Solution 4 | youngwolf |
Solution 5 | Paulo Andrade |
Solution 6 | Bertwin Romero |
Solution 7 | tHeSiD |