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] 삭제
몇 마디 만하겠습니다