我正在用AngularJS創建我的網站的「討論」模塊。在AngularJS中嵌套資源
我親眼兩種資源,爲客戶< - >服務器的通信:
- 討論$資源(用於檢索討論有關的相關信息,如「標題」,「狀態」等的討論還含有
- 消息$資源
問題: 當我加載網頁,我做Discussion.query(),用於檢索討論標題等爲了節省客戶端< - >服務器的請求,消息的討論是也返回(除了討論信息)。 好吧,那太棒了,但是如果我想編輯或刪除郵件呢?當我拿到他們使用「討論」模型對象時,消息不被視爲$資源消息和我不能$ update他們或* $刪除它們。
其實,我只是做了一個「Messages.get()」爲得到真正的消息$資源,但它的成本到我的服務器(延遲,SQL查詢,...)一個新的請求。
目前,我發現了兩個解決方法實現這一目標:
- 使用消息$資源靜態方法(Message.delete(...)等)
- 「原始」 $ http請求
我不滿意這兩個解決方案,因爲我希望代碼儘可能簡單。
-
是否可以告訴角「嘿,這對象實際上是消息$資源!」當我使用其他資源檢索郵件? 對不起,奇怪的解釋。我認爲任何代碼都不會有幫助,但問我需要。
聽起來好像討論服務應該有一個消息服務的dep,它應該在加載討論時在messagesService上設置.messages屬性;不熟悉$資源,所以沒有留下完整的答案 – jcollum
是的,我已經這樣做了。問題是,結果消息不被視爲$資源,所以我不能編輯/刪除它們 – Neozaru
張貼一些代碼...很難遵循你所說的話。 – fabrizioM