Как исправить ошибку синтаксического анализа: неожиданный токен => в узле? - PullRequest
3 голосов
/ 08 мая 2019

Я использую функции Firebase для интеграции чековых платежей. Эта конкретная функция используется для регистрации клиента с полосой.

Версия узла 10.15.3,

npm версия 6.9.0,

"ecmaVersion": 6 дюймов .eslintrc.json

const functions = require('firebase-functions');

const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);

const stripe = require('stripe')(functions.config().stripe.testkey)

exports.createStripeCustomer = functions.auth.user()

          .onCreate(async (user) => {
             const customer = await
             stripe.customers.create({email: user.email});
             await admin.firestore()
               .collection('stripe_customers')
               .doc(user.uid)
               .set({customer_id: customer.id});

           });

Код такой же, как у платформы firebase на примере github https://github.com/firebase/functions-samples/blob/master/stripe/functions/index.js

Ошибка синтаксического анализа: неожиданный токен =>

и если я изменю "ecmaVersion": 6 на "ecmaVersion": 8 in .eslintrc.json

then error is .onCreate(async (user) => {

                            ^

SyntaxError: Unexpected token (

Я хочу правильно развернуть функцию, чтобы пользователь мог зарегистрироваться в хранилище полос и дат в хранилище Firebase

1 Ответ

0 голосов
/ 08 мая 2019

Похоже, вы говорите об ошибке eslint. Я смог воспроизвести на демонстрационной странице eslint, используя ecmaVersion 2015.

Я только что изменил его на ecmaVersion 2017 (версия с того момента, когда была поддержана async/await), и ошибка исчезла ( ссылка ).

Также проверил конфигурацию eslint в проекте, о котором вы говорите. Это ecmaVersion 2017: ссылка

...