2014-04-01 21 views
0

對於AngularJS和NodeJS我很新。我正在嘗試使用MEAN堆棧開發一個應用程序。我只是在mean.io樣板文件中查看示例代碼。我參考示例應用程序創建了自己的應用程序。我試圖提交AngularJS前端,並期待它調用NodeJs服務器端,但它不工作。我認爲service.js搞亂了一些東西。這裏是示例應用程序的服務代碼。任何人都可以解釋這段代碼在Angular客戶端和NodeJS服務器端的作用。在AngularJS中解釋service.js

'use strict'; 

//Articles service used for articles REST endpoint 
angular.module('mean.articles').factory('Articles', ['$resource', function($resource) { 
    return $resource('articles/:articleId', { 
     articleId: '@_id' 
    }, { 
     update: { 
      method: 'PUT' 
     } 
    }); 
}]); 
+0

你檢查了嗎? http://docs.angularjs.org/guide/services –

+0

我剛剛更新了這個問題.... – iJade

回答

0

它創建了一個名爲Articles的角度新工廠。 Articles工廠注入了$ resource服務。 $ resource對象用於設置用於與RESTful服務通信的對象,在這種情況下,「articles /:articleId」articleId將從使用此$資源查詢返回的資源對象的_id中提取。當您打電話更新其中一個資源時,它將使用PUT HTTP動詞。

它本身只是定義了工廠,但實際上並沒有進行任何調用,您需要注入並在某處使用它像Articles.query();

從文檔

如果參數值與@前綴,則該 參數的值從數據對象中提取(用於有用的非GET 操作)。

+0

因此,這是否是AngularJS和NodeJS api之間的鏈接? – iJade

+1

這樣想 - 在你的代碼中,你定義了一種調用RESTful服務的方式,但是你還沒有使用該服務。這相當於你定義了一個函數,但還沒有執行它... – callmekatootie

+0

as callmekatootie說這基本上是配置來創建一個角度的新服務,以後可以使用,但由於它沒有被使用,它不會顯示任何呼叫本身。下一步是將文章注入到另一個服務或控制器中,並調用Articles.query()來獲取文章,返回的對象將具有保存或刪除對象的方法。 – shaunhusain