2013-08-16 23 views
1

引用我以前的post,爲什麼在這裏使用$ parent的代碼爲 <fm-rating ng-model="$parent.restaurant.rating" readonly="true"></fm-rating>。完整的代碼是here

我一直在閱讀提及避免使用$父母的博客,因此我的問題。有沒有更好的方法來編寫代碼?或者是有沒有辦法,因爲在主頁上的過濾器需要影響的結果看到這個截圖的app

回答

1

fm-rating聲明一個孤立的範圍,因爲看到here,這意味着它不使用原型繼承來獲得訪問父項屬性。

當您希望在其中可以使用任何名稱而不必擔心重寫父屬性的作用域時,這非常有用。 「爆發」這種隔離的唯一方法是使用$parent,這是隔離範圍中的一個屬性,指向範圍的父級!

欲瞭解更多的信息,在documentation of directives搜索「孤立」。

+1

這篇帖子關於如何在Angular中使用範圍也很有用:https://github.com/angular/angular.js/wiki/Understanding-Scopes –

+0

嗯,我理解範圍:{},但我很好奇,這是做到這一點的唯一方法,還是有沒有更好的方式不使用$父? – parsh