簡體   English   中英

如何修復錯誤解析觸發器:在 Gitlab CI 上部署 Firebase 函數時找不到模塊'../../

[英]How to fix Error parsing triggers: Cannot find module '../../ when deploying Firebase Functions on Gitlab CI

我有一個具有 Typescript 功能的 Firebase 項目

當我使用 firebase 從我的控制台安裝、構建和部署時,部署一切正常。

但是,當我嘗試使用 my.gitlab-ci.yml 腳本執行相同操作時,我收到一個錯誤,它找不到我的相對導入。

Error: Error parsing triggers: Cannot find module '../../config/version'
Require stack:

Typescript 代碼為:

// utilsController.ts
import { serverVersion } from '../../config/version'

這被轉換為

// utilsController.js
const version_1 = require("../../config/version");

顯然 firebase deploy 在 Gitlab CI 上運行時不喜歡這樣,但它在我的機器上沒有問題。

我的 tsconfig.json 看起來像這樣:

{
  "compilerOptions": {
    /* Basic Options */
    "incremental": true,
    "module": "commonjs",
    "outDir": "lib",
    "target": "es2015",

    /* Strict Type-Checking Options */
    "alwaysStrict": true,
    "noImplicitAny": true,
    "noImplicitThis": true,
    "strict": true,
    "strictBindCallApply": true,
    "strictFunctionTypes": true,
    "strictNullChecks": true,
    "strictPropertyInitialization": true,

    /* Additional Checks */
    "noFallthroughCasesInSwitch": true,
    "noImplicitReturns": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,

    /* Module Resolution Options */
    "esModuleInterop": true,
    "moduleResolution": "node",
    "resolveJsonModule": true,

    /* Experimental Options */
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,

    /* Advanced Options */
    "forceConsistentCasingInFileNames": true,
    "sourceMap": true
  },
  "compileOnSave": true,
  "include": [
    "src"
  ]
}

我犯了這個錯誤 go 並且我很確定是 tsconfig.json 的更新,成功了。 可能“目標”應該是“es2017”,我的設置才能正常工作。 我只是使用 firebase-tools CLI 創建了一個新的 Firebase Functions Typescript 項目,然后在 tsconfig 中離開。 新的,有效的 tsconfig 是:

{
  "compilerOptions": {
    "module": "commonjs",
    "noImplicitReturns": true,
    "noUnusedLocals": true,
    "outDir": "lib",
    "sourceMap": true,
    "strict": true,
    "target": "es2017",

    /* Module Resolution Options */
    "resolveJsonModule": true,

    /* Experimental Options */
    "esModuleInterop": true,
    "experimentalDecorators": true,
  },
  "compileOnSave": true,
  "include": [
    "src"
  ]
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM