解析错误:“导入”和“导出”可能仅在 flutter 应用程序中与“sourceType: module”一起出现

问题描述 投票:0回答:1

我正在尝试将 flutter 应用程序部署到 firebase 主机,但我的 index.js 文件中有一个错误,我不知道如何修复。

我已经完成了 flutter build web 命令、firebase init 命令,然后是 firebase 部署。

当进程尝试部署我在 index.js 文件中的函数时,我遇到了问题。

index.js:

import { firestore } from "firebase-functions"; <<< ERROR HERE
import { initializeApp, messaging } from "firebase-admin";
initializeApp();

export const updateTrxnNotification = firestore
    .document("company/{companyId}/trxns/{trxnsId}")
    .onUpdate((change, context) => {
      const newValue = change.after.data();
      const documentId = context.params.documentId;

      // // Access other fields as needed from newValue

      // // Constructing the notification payload
      const payload = {
        notification: {
          title: "Document Updated",
          body: "Document ${documentId} has been updated.",
        },
        // You can add additional data fields as needed
        data: {
          documentId: documentId,
        },
      };

      // // Get the device token from your Firestore document
      const deviceToken = newValue.deviceToken;

      // Send the notification
      return messaging().send(deviceToken, payload);
    });

我在第一个导入语句中收到错误。

错误如下: 解析错误:“导入”和“导出”可能仅与“源类型:模块”一起出现

并且没有可用的快速修复方法。

我已经阅读了一些询问相同错误的问题,但它们相当旧,他们的建议对我不起作用。

这是我的 eslintrc.js 文件:

/* eslint linebreak-style: ["error", "windows"]*/
// eslint-disable-next-line no-undef
module.exports = {
  env: {
    es6: true,
    node: true,
  },
  parserOptions: {
    "ecmaVersion": 2018,
  },
  extends: [
    "eslint:recommended",
    "google",
  ],
  rules: {
    "no-restricted-globals": ["error", "name", "length"],
    "prefer-arrow-callback": "error",
    "quotes": ["error", "double", {"allowTemplateLiterals": true}],
  },
  overrides: [
    {
      files: ["**/*.spec.*"],
      env: {
        mocha: true,
      },
      rules: {},
    },
  ],
  globals: {},
};

我尝试将“sourceType”:模块添加到 parserOptions 行,但它也不起作用。

如何修复此问题,以便将其部署到 firebase 主机或移至下一个错误?

谢谢

flutter firebase
1个回答
0
投票

将 sourceType 及其值添加到 eslintrc.js 文件时,确保使用双引号 (" ")。

module.exports = {
  ...
  parserOptions: {
    "ecmaVersion": 2018,
    "sourceType": "module",
  },
  ...
};
© www.soinside.com 2019 - 2024. All rights reserved.