Typescript找不到名称'Firebase'

Typescript找不到名称'Firebase'

问题描述:

尝试构建包含angularfire2和firebase的项目时,出现打字稿错误。下面是包:Typescript找不到名称'Firebase'

"angularfire2": "^2.0.0-beta.0", 
"firebase": "^2.4.2", 

,这里是错误:

[10:58:34] Finished 'build.html_css' after 4.51 s 
[10:58:34] Starting 'build.js.dev'... 
c:/Dev/daybreak/node_modules/angularfire2/database/database.d.ts(8,29): error TS2304: Cannot find name 'Firebase'. 
c:/Dev/daybreak/node_modules/angularfire2/database/database.d.ts(9,31): error TS2304: Cannot find name 'Firebase'. 
c:/Dev/daybreak/node_modules/angularfire2/providers/auth.d.ts(10,25): error TS2304: Cannot find name 'FirebaseCredentials'. 
c:/Dev/daybreak/node_modules/angularfire2/providers/auth.d.ts(13,16): error TS2304: Cannot find name 'FirebaseAuthData'. 
c:/Dev/daybreak/node_modules/angularfire2/providers/auth.d.ts(14,29): error TS2304: Cannot find name 'FirebaseCredentials'. 
c:/Dev/daybreak/node_modules/angularfire2/providers/auth.d.ts(14,59): error TS2304: Cannot find name 'FirebaseAuthData'. 
c:/Dev/daybreak/node_modules/angularfire2/providers/auth_backend.d.ts(4,44): error TS2304: Cannot find name 'FirebaseCredentials'. 
c:/Dev/daybreak/node_modules/angularfire2/providers/auth_backend.d.ts(8,44): error TS2304: Cannot find name 'FirebaseAuthData'. 
c:/Dev/daybreak/node_modules/angularfire2/providers/auth_backend.d.ts(9,25): error TS2304: Cannot find name 'FirebaseAuthData'. 
c:/Dev/daybreak/node_modules/angularfire2/providers/auth_backend.d.ts(11,38): error TS2304: Cannot find name 'FirebaseCredentials'. 

如果我打开node_modules database.d.ts,没有对“火力地堡”这样我就可以明白为什么进口这将失败..它期望从哪里获得'Firebase'?

import { FirebaseListObservable } from '../utils/firebase_list_observable'; 
import { FirebaseObjectObservable } from '../utils/firebase_object_observable'; 
import { FirebaseListFactoryOpts } from '../utils/firebase_list_factory'; 
import { FirebaseObjectFactoryOpts } from '../utils/firebase_object_factory'; 
export declare class FirebaseDatabase { 
    private fbUrl; 
    constructor(fbUrl: string); 
    list(urlOrRef: string | Firebase, opts?: FirebaseListFactoryOpts): FirebaseListObservable<any[]>; 
    object(urlOrRef: string | Firebase, opts?: FirebaseObjectFactoryOpts): FirebaseObjectObservable<any>; 
} 

我不知道为什么它甚至检查node_modules分型..它的一部分,我排除tsconfig.json

{ 
    "compilerOptions": { 
    "target": "es5", 
    "module": "commonjs", 
    "declaration": false, 
    "removeComments": true, 
    "noLib": false, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "sourceMap": true, 
    "pretty": true, 
    "allowUnreachableCode": false, 
    "allowUnusedLabels": false, 
    "noImplicitAny": true, 
    "noImplicitReturns": true, 
    "noImplicitUseStrict": false, 
    "noFallthroughCasesInSwitch": true 
    }, 
    "exclude": [ 
    "node_modules", 
    "dist", 
    "typings/browser.d.ts", 
    "typings/browser", 
    "src" 
    ], 
    "compileOnSave": false 
} 

在它的核心,看来你没有基地安装Firebase类型。

任何Firebase API的根类都是Firebase类。所以最有可能的类型有:ref<Firebase>,就像“WOAH,这是'Firebase'的事情是什么?”

结帐的install guide for AngularFire2

步骤3:

NPM安装分型-g

分型安装--save --ambient火力

+1

这并不能解决我的问题。 – Jim

添加到.TS此你的文件==>从'angularfire2'导入{AngularFire,FirebaseListObservable};