2017-08-02 22 views
1

我想知道爲什麼我得到這個編譯錯誤,如果我聲明變量varlet關鍵字?我的意思是,這個得好:Angular:「意外的令牌,期望的構造函數,方法,訪問器或屬性」

export class AppComponent { 

    refreshClickStream$: any; 

    constructor(){ 
    } 

雖然這帶來的錯誤:

export class AppComponent { 

    var refreshClickStream$: any; 

    constructor(){ 
    } 
+3

不能使用VAR或聲明一個類變量時讓。您可以使用公共或私人。默認情況下,這個變量在打字稿中是公開的。 – Faisal

+0

@Faisal - 好的,但爲什麼我可以在構造函數中使用var聲明它? –

+2

因爲這是一個局部變量。您可以使用let,var或const來定義它。 – Faisal

回答

0

在課堂上,TypeScript不允許使用

而且,裏面的一類ALSO你會從declarating功能禁止與

  • function

所以你想這個。

export class AppComponent { 

    a: string = "foo"; 
    b: string = "bar"; 


    foo(): void { } 

    constructor(){ 
    } 

} 

不,

export class AppComponent { 

    var a: string = "foo"; 
    let b: string = "bar"; 


    function foo(): void { } 

    constructor(){ 
    } 

} 
0

這是階級屬性和打字稿,你可以這樣定義一個屬性:

@Component({selector: 'greet', template: 'Hello {{name}}!'}) 
class Greet { 
    name: string = 'World'; 
    constructor(){ 
    } 
} 
相關問題