2013-07-10 43 views
0

我是AngularJS的新手,FireBase作爲我的數據存儲。我已經瀏覽了他們網站上的例子。現在,我想擴展簡單的概念並創建更詳細的應用程序。AngularJS獲取設置多個控制器

比方說,我有一個配方控制器。這將包含食譜名稱和簡短說明。但是,我也想要一份成分清單及其數量。

成分將是一個選擇元素與可供選擇的成分列表中選擇。

我的問題是,如何在CRUD網站上使用多個控制器?或者我不應該使用多個控制器,並以某種方式使用配方控制器來處理所有事情?

如果我是通過在MSSQL中創建數據庫模式來做到這一點,那麼我就沒有問題,並且完全知道該怎麼做。我認爲這是事實,一切都是客戶端,這是拋棄我。

在此先感謝您提供的任何幫助。

回答

0

你可能不希望每個實體都有一個控制器。你在這裏控制器映射到一個範圍對象。範圍然後綁定到一個視圖 - 保持同步。所以如果你的視圖顯示一個配方(即名稱/描述),它也可能有一個子屬性成分($ scope.recipe.ingredients)。

你是控制器將管理這個'食譜'對象,並提供修改/檢索/管理它的方法。舉個例子,你想把$ scope.reciepe對象保存到你的FireBase商店 - 你可以在你的控制器中注入一個服務,然後做一個$ http調用來把這個對象放到你的數據庫中。

簡要控制

的概念性概述多見於https://docs.angularjs.org/guide/controller

+1

要在不同的字重申,它往往是更加有用的是具有每視圖的控制器,而不是每模型的控制器。如果您希望爲在同一視圖中使用的不同模型模塊化特定於模型的功能,則可以考慮爲每個模型創建一個服務。這只是一種可能的模式。 – bennlich

+0

此外,您可以利用[angularfire](http://github.com/firebase/angularfire)自動將數據注入Firebase並跳過$ http REST命令。 – Kato

+0

優秀!謝謝萊昂。這只是我需要的澄清。加藤,是的,我將會使用angularFire。 –