2016-05-26 60 views
2

我正在嘗試在Angular 2打字稿中重寫我的應用程序,並希望使用最佳做法。我發現了以下guide,但它並不回答我非常基本的問題。這裏有兩個問題:TypeScript中Angular 2的最佳做法

  1. 在組件中,是否可以聲明一個函數內的局部變量,或者我應該聲明它爲私人,正確的構造函數?
  2. 我該如何在嵌套函數中調用變量?例如:

    replicator(){// return observable} 
    myFunction(){// Nested function to be called} 
    
    ngOnInit() { 
        this.replicator().subscribe(function (data) { 
         // Call function here 
        } 
    } 
    

    我應該打電話給我的功能做:let self = this之前this.replicator(),然後調用self.myFunction()?還是有更好的方法來做到這一點?

PS如果您有一個很好的最佳實踐指南,請將其作爲評論發佈!

回答

4

我應該如何調用變量嵌套函數裏面

使用箭頭功能(more)。

ngOnInit() { 
    this.replicator().subscribe((data) => { 
     // Call function here 
     this.somefunction 
    } 
} 

是否確定要聲明一個局部變量的一個函數裏或者我應該把它聲明爲私有,對構造

兩者都是罰款以上。本地如果只有本地功能或private如果其他功能可能需要它

+0

謝謝!還有一件事,你如何聲明局部變量? 'myVar:string;'或'let myVar;' – ncohen

+1

'let myVar:string'或者甚至更好'const myVar =「some stringt」'如果您知道預先設置的值並且不想更改 – basarat

+0

您一定要聲明變量頂部,鍵入它們並**初始化**它們,這也是一種很好的JavaScript實踐,因爲您避免了未定義的值(在調試時沒有幫助); 通常,它看起來像這樣:'let myVar:string ='''。空值不會幫助您連接。 –