Я только что использовал приложение create-response-app, чтобы запустить новое приложение для реагирования на машинописный текст, а затем установил firebase. Я запустил firebase init, выбрал опцию машинописного текста, включил es lint и включил функции.
Как только я раскомментировал код стандартной функции в functions / index.ts, я заметил некоторые предупреждения в VS Code …
функции / eslintrc.js:

Ошибка выдачи: Ошибка синтаксического анализа: parserOptions.project был установлен для @ typescript-eslint / parser. Файл не соответствует конфигурации вашего проекта: .eslintrc.js. Файл должен быть включен хотя бы в один из предоставленных проектов
функции / tsconfig.json:

функции / SRC / index.ts:

дает ошибку: Ошибка синтаксического анализа: аргумент для параметра ‘—jsx’ должен быть: ‘preserve’, ‘react-native’, ‘react’.eslint
функции / package.json:
{
"name": "functions",
"scripts": {
"lint": "eslint --ext .js,.ts .",
"build": "tsc",
"serve": "npm run build && firebase emulators:start --only functions",
"shell": "npm run build && firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
},
"engines": {
"node": "14"
},
"main": "lib/index.js",
"dependencies": {
"firebase-admin": "^9.8.0",
"firebase-functions": "^3.14.1"
},
"devDependencies": {
"@typescript-eslint/eslint-plugin": "^3.9.1",
"@typescript-eslint/parser": "^3.8.0",
"eslint": "^7.6.0",
"eslint-config-google": "^0.14.0",
"eslint-plugin-import": "^2.22.0",
"firebase-functions-test": "^0.2.0",
"typescript": "^3.8.0"
},
"private": true
}
Я не понимаю этих ошибок. Может кто-нибудь помочь?
Спасибо
Первая ошибка TypeScript ESLint связана с невозможностью найти проект
tsconfig.json, соответствующий вашим функциям.Чтобы исправить это, нам нужно сообщить TypeScript ESLint, где находится другой
tsconfig.json, отредактировав вашparserOptions..eslintrc.jsЧтобы исправить проблему синтаксического анализа JSX для ваших файлов React, вы должны добавить
jsxпараметр компилятора к вашимtsconfig.jsonконфигурациям, которые включают JSX. Скорее всего, это будет ваша нефункциональная конфигурация, и вам, скорее всего, потребуется установить для нее значениеreact-jsxдля React v17 + илиreactво всех остальных случаях для приложения Create React.tsconfig.jsonКак это помогает в решении проблемы? Я пробовал это, но у меня все еще та же проблема внутри моей папки functions / src. Было бы здорово узнать, какие настройки в
functions/tsconfig.jsonи какие настройки вfunctions/.eslintrc.jsдолжны быть выполнены. Мне кажется, что проблема связана с некоторой проблемой vscode, посколькуnpm --prefix \"$RESOURCE_DIR\" run lintработает должным образом с файлом.eslintrc.js, сгенерированным firebase. — person NewbG; 16.07.2021Он исправляет проблемы оригинального плаката, сообщая парсеру TypeScript ESLint использовать два разных tsconfigs, а tsconfg, соответствующий исходному тексту React, включает флаг jsx. Что касается других ваших пробелов в применении моего ответа к вашей настройке, они варьируются, поэтому я не могу сказать, какой должна быть ваша вся конфигурация. Возможно, стоит отметить, что мой ответ включает необходимые изменения в файлы, опубликованные в вопросе. — person NewbG; 18.07.2021