我在Visual Studio代码和index.ts文件中设置了一个Firebase函数项目,但无法使其识别导入的模块。自动完成功能显示模块存在,但是在导入模块时出现错误“找不到模块”。
但是该项目编译并通过了皮棉检查。我就是不能使用智能感知。我测试了以下解决方案,但无法使其正常工作;
npm install
。屏幕截图
错误
文件夹结构
tsconfig.json
{
"compilerOptions": {
"module": "commonjs",
"noImplicitReturns": true,
"noUnusedLocals": true,
"outDir": "lib",
"sourceMap": true,
"strict": true,
"target": "es2017",
"typeRoots": ["node_modules/@types"]
},
"compileOnSave": true,
"include": ["src", "decs.d.ts"]
}
package.json
{
"name": "functions",
"scripts": {
"lint": "tslint --project tsconfig.json",
"build": "tsc",
"serve": "npm run build && firebase emulators:start --only functions",
"shell": "npm run build && firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
},
"engines": {
"node": "8"
},
"main": "lib/index.js",
"dependencies": {
"@google-cloud/firestore": "^4.2.0",
"@google-cloud/storage": "^5.2.0",
"@types/multer": "^1.4.4",
"cors": "^2.8.5",
"express": "^4.17.1",
"express-multipart-file-parser": "^0.1.2",
"firebase-admin": "^9.2.0",
"firebase-functions": "^3.11.0",
"multer": "^1.4.2"
},
"devDependencies": {
"@types/cors": "^2.8.7",
"firebase-functions-test": "^0.2.0",
"tslint": "^5.12.0",
"typescript": "^3.8.0"
},
"private": true
}
答案 0 :(得分:1)
这是我的用例。
在JS中
const admin = require("firebase-admin")
const functions = require("firebase-functions")
在TS
import firebase from "firebase/app"
import "firebase/analytics"
import "firebase/auth"
import "firebase/storage"
在package.json中
"dependencies": {
"firebase": "^7.17.1",
...
},
您可以在firebase文档页面中找到有关ES2015样式导入的官方文档 https://firebase.google.com/docs/web/setup#add-sdks-initialize
ps。屏幕快照确实有助于总体上描述您的问题。 be?