машинописный код скомпилирован js файлов конфигурация eslint - PullRequest
0 голосов
/ 17 июня 2020

Мне удалось настроить проект кода VS в соответствии с конфигурацией airbnb и typescript, и, наконец, линтинг кода typescruipt ведет себя, как ожидалось.

Найдите .eslintr c. js:

const path = require('path');
module.exports = {
  root: true,
  env: {
    browser: true,
    jquery: true
  },
  extends: [
    'airbnb/base',
    'plugin:@typescript-eslint/recommended',
  ],
  parserOptions: {
    parser: 'parser: '@typescript-eslint/parser',
    ecmaVersion: 2018,
    sourceType: 'module',
  },
  settings: {
    'import/resolver': {
      alias: {
        map: [
          ['@', path.resolve(__dirname, 'src')],
        ],
        extensions: [
          '.js', '.js', '.json',
        ],
      },
    },
  },
  rules: {
    'comma-dangle': ['error', {
      'arrays': 'always-multiline',
      'objects': 'always-multiline',
      'imports': 'always-multiline',
      'exports': 'always-multiline',
      'functions': 'never'
    }],
    'function-paren-newline': ['error', 'consistent'],
    'no-alert': 0,
    'no-bitwise': 0,
    'no-console': 0,
    'no-param-reassign': 0,
    'no-shadow': 0,
    'jsx-a11y/anchor-is-valid': 0,
    'jsx-a11y/click-events-have-key-events': 0,
    'jsx-a11y/label-has-associated-control': 0,
    'jsx-a11y/label-has-for': 0,
    'jsx-a11y/no-autofocus': 0,
    'jsx-a11y/no-noninteractive-element-interactions': 0,
    'jsx-a11y/no-static-element-interactions': 0,
    'linebreak-style': [0, "windows"],
    'camelcase' : 0,
    'no-plusplus' : 0,
    'no-underscore-dangle' : 0,
    'no-buffer-constructor:': 0
  },
};

Однако es-lint также работает для скомпилированных машинописных текстов. js файлов, чего я не хочу. Я попытался использовать компилятор ts c и плагин prettier, чтобы они были скомпилированы в соответствии с правилами airbnn, которые я считаю наиболее желательными. Другой вариант - отключить eslint для файлов js. Я проверил много статей о том, как настроить проект для работы с машинописным текстом, чего я уже добился, но мне не хватает этого последнего шага в том, что происходит с скомпилированными файлами. js в отношении линтинга и того, как его настроить. Также, как скомпилировать много файлов одновременно, когда вы работаете с большим количеством файлов в проекте.

Помимо моих конкретных сомнений, любые комментарии относительно рабочего процесса машинописного текста приветствуются. Я предполагаю, что вы скомпилируете все свои файлы ts c и установите в качестве точки входа в приложение соответствующий файл ts c compiled. js, но я не уверен, что это так.

Большое спасибо заранее.

1 Ответ

1 голос
/ 17 июня 2020

Вы можете настроить eslint для игнорирования определенных файлов или каталогов

Если ваше приложение компилируется в каталог build, в вашем eslint может быть следующее:

"ignorePatterns": ["build"]

Или, если вы хотите игнорировать все .js файлы независимо от того, где они были скомпилированы:

"ignorePatterns": ["**/*.js"]

Или используйте аналогичные шаблоны в a .eslintignore файле.

...