오류 구문 분석 트리거를 수정하는 방법 : Gitlab CI에 Firebase 함수를 배포 할 때 '../../ 모듈을 찾을 수 없습니다.

사이먼 키 브스 가르드

Typescript 함수가있는 Firebase 프로젝트가 있습니다.

파이어베이스 배포를 사용하여 콘솔에서 설치, 빌드 및 배포하면 모두 정상적으로 작동합니다.

그러나 .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"
  ]
}
사이먼 키 브스 가르드

나는이 오류를 없애고 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"
  ]
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관