Что я делаю неправильно в моем файле ESLint, поэтому импорт не будет предупрежден? - PullRequest
0 голосов
/ 16 октября 2019

После прочтения нескольких вопросов и ответов, касающихся моей проблемы:

Ошибка анализа: «import» и «export» могут появляться только с «sourceType: module»

Я написал .eslintrc.json в:

{
  "extends": ["airbnb", "prettier", "plugin:node/recommended"],
  "plugins": ["prettier"],
  "env": {
    "node": true,
    "es6": true,
    "browser": true
  },
  "parser": "babel-eslint",
  "parserOptions": {
    "ecmaVersion": 11,
    "sourceType": "module",
    "allowImportExportEverywhere": true
  },
  "rules": {
    "prettier/prettier": "error",
    "spaced-comment": "off",
    "no-console": "warn",
    "consistent-return": "off",
    "func-names": "off",
    "object-shorthand": "off",
    "no-process-exit": "off",
    "no-param-reassign": "off",
    "no-return-await": "off",
    "no-underscore-dangle": "off",
    "class-methods-use-this": "off",
    "prefer-destructuring": ["error", { "object": true, "array": false }],
    "no-unused-vars": ["error", { "argsIgnorePattern": "req|res|next|val" }],
    "semi": [2, "never"],
    "object-curly-spacing": [2, "always"]
  }
}

, используя devDependencies:

  "devDependencies": {
    "babel-eslint": "^10.0.3",
    "eslint": "^6.4.0",
    "eslint-config-airbnb": "^18.0.1",
    "eslint-config-prettier": "^6.3.0",
    "eslint-plugin-import": "^2.18.2",
    "eslint-plugin-jsx-a11y": "^6.2.3",
    "eslint-plugin-node": "^10.0.0",
    "eslint-plugin-prettier": "^3.1.1",
    "eslint-plugin-react": "^7.14.3",
    "eslint-plugin-react-hooks": "^1.7.0",
    "nodemon": "^1.19.3",
    "prettier": "^1.18.2"
  },

, а также настройку моего двигателя:

  "engines": {
    "node": "^10"
  }

Когда янаписать тестовый модуль с Babel:

export default class Search {
  constructor() {
    alert('search test')
  }
}

Я получаю предупреждение:

Декларации импорта и экспорта пока не поддерживаются .eslint (node ​​/ no-unsupported-features /es-синтаксис)

Почему мои настройки не работают? Я мог бы написать игнорирование modules/ в файле .eslintignore , но я хотел бы знать, почему я получаю это предупреждение и как я могу его правильно разрешить?

...