2014-07-10 73 views
0

如果你採取以下Plunkr你會看到一個簡單的服務 - 增加計數,它被報告給用戶。爲什麼一個AngularJS服務綁定工作,但其他沒有

什麼我想明白的是爲什麼這個工程(增量報告給用戶在點擊) - 視圖綁定功能:

從HTML

<p> This is my countService variable : {{countService()}}</p> 

從控制器

$scope.countService = testService.getCount 

爲什麼這不起作用 - 功能結合範圍:

從HTML

<p> This is my countService variable : {{countService}}</p> 

從控制器

$scope.countService = testService.getCount() 

最後我們結合到服務中的函數,但第二個不綁定新值。

一個清晰,易於理解,解釋將是巨大的:)

回答

1

在你直接綁定到功能,因此角檢查功能輸出已經改變了第一個版本。在第二個版本中,只有在創建範圍時才調用該函數,並將countService設置爲該值。由於countService現在是一個與計數函數無關的變量,它的值不會反映從該函數返回的值。

+0

啊,好的。我想我現在明白了。那麼,那些爲$ watch觀看控制器服務功能的捷徑呢? – Darren

相關問題