application js. Je dois utiliser eslint pour cette application. J'utilise https://www.npmjs.com/package/eslint-config-airbnb et j'utilise un plugin plus joli dans VS Code Editor.
.eslintrc
{
"extends": "airbnb"
}
Je vois que VS Code me donne beaucoup d'erreurs dans le projet complet maintenant après l'ajout du plugin eslint https: //marketplace.visualstudio.comitems? ItemName = dbaeumer.vscode-eslint et package npm.
Peu d'erreurs
[eslint] Definition for rule 'jsx-a11y/href-no-hash' was not found (jsx-a11y/href-no-hash)
[eslint] Expected linebreaks to be 'LF' but found 'CRLF'. (linebreak-style)
[eslint] Unexpected unnamed function. (func-names)
[eslint] Missing space before function parentheses. (space-before-function-paren)
[eslint] Strings must use singlequote. (quotes)
[eslint] Unexpected function expression. (prefer-arrow-callback)
[eslint] Unexpected unnamed function 'bind'. (func-names)
[eslint] Missing space before function parentheses. (space-before-function-paren)
package.json
"devDependencies": {
"babel": "^6.23.0",
"babel-cli": "^6.5.1",
"babel-core": "^6.9.0",
"babel-eslint": "^7.2.3",
"babel-preset-es2015": "^6.5.0",
"babel-preset-stage-0": "6.5.0",
"eslint": "^3.19.0",
"eslint-config-airbnb": "^15.1.0",
"eslint-plugin-import": "^2.7.0",
"eslint-plugin-jsx-a11y": "^6.0.2",
"eslint-plugin-react": "^7.4.0",
"nodemon": "^1.12.1"
}
index.js
import request from "superagent";
module.exports = function(req, res, next) {
const id = "abc";
request
.post(url)
.send(`p1=v1`)
.send(`p2=v2`)
.end(function(error, response) {}.bind(this));
next();
};
Même type d'erreurs dans chaque fichier JS. Quelqu'un sait-il comment résoudre ces problèmes?
1) Ajoutez les modules suivants à votre devDependencies
en utilisant:
npm install --save-dev eslint
npm install --save-dev eslint-config-airbnb-base
npm install --save-dev eslint-plugin-import
2) Ajoutez une section eslintConfig
à votre package.json
:
"eslintConfig": {
"extends": "airbnb-base",
"env": {
"es6": true,
"browser": true
},
"rules": {
"brace-style": [
"error",
"stroustrup"
],
"comma-dangle": [
"error",
"never"
],
"no-unused-vars": [
"warn"
],
"no-var": [
"off"
],
"one-var": [
"off"
]
}
}
3) Visitez eslint.org/docs/rules , recherchez les avertissements que vous souhaitez modifier et ajoutez-les au eslintConfig
ci-dessus.
4) Supprimez le .eslintrc
fichier à la racine de votre projet.
5) Redémarrez votre IDE
Installez le package eslint localement dans votre projet.
$yarn add eslint --dev
Idéalement, on peut générer le fichier de configuration .eslintrc via la commande ci-dessous, malheureusement, il installe des versions incorrectes de peerDependencies entraînant des erreurs de peluchage.
$./node_modules/.bin/eslint --init
Un moyen plus simple de corriger la version du problème de peerDependencies, utilisez la commande ci-dessous et installez (je vous suggère d'installer des packages liés à jsx et de réagir bien que vous ne puissiez pas faire de choses liées à React) version correspondante des peerDependencies avec eslint-config-airbnb
$npm info "eslint-config-airbnb@latest" peerDependencies
Modifier le fichier .eslintrc avec le contenu ci-dessous
{
"extends": "airbnb",
"plugins": [
"react",
"jsx-a11y",
"import"
],
"rules": {
},
"env": {
}
}
* Remarque: veuillez modifier le fichier eslintrc en fonction de vos règles de codage et de l'environnement que vous suivez. Référer développeur-guide
ESLint a écrit des messages sur ce que vous devez faire. Il suffit de le lire.
Le code correct avec ces règles doit être le suivant:
import request from 'superagent';
module.exports = (req, res, next) => {
const id = 'abc';
request
.post(url)
.send('p1=v1')
.send('p2=v2')
.end((error, response) => {
// do something on end
});
next();
};