2014-09-02 103 views
2

我是新來的角js,我使用角js與mvc5應用程序。我已經在js中創建了一個模塊和控制器來處理角度。我在客戶控制器(MVC5)中有一個「查看」操作。我們需要在這個視圖中顯示所有的客戶,我想在這裏使用「ng-repeat」。

我的問題是我收到客戶作爲模型的集合,以前我正在模型的foreach循環顯示客戶。現在我可以如何將模型添加到$ scope數據容器中,以便我可以在ng-repeat中使用。

回答

1

到目前爲止,您一直在做的是將服務器上的客戶集合直接呈現給返回給客戶端的HTML。你想要做的最理想的是呈現沒有customers集合的HTML,並且通過$ http服務調用你的API控制器來爲你提供數據。從那裏,是很容易,你

我建議閱讀:

在控制器中使用$ HTTP是遠離最佳實踐,但爲了簡化......控制器中的$ http調用可能如下所示:

$http({method: 'GET', url: '/api/customers'}). 
    success(function(data, status, headers, config) { 
     $scope.customers = data; 
    }). 
    error(function(data, status, headers, config) { 
     alert('error'); 
    }); 

然後您可以在視圖ngRepeat:

<ul> 
    <li ng-repeat="customer in customers"> 
     {{customer.name}} 
    </li> 
    </ul> 
+0

截至目前,我不使用網頁API的數據,所以你的意思是我需要調用通過網頁API的MVC行動? – Fooker 2014-09-02 09:19:01

+0

您必須從Angular調用WebAPI才能以JSON格式檢索客戶。我強烈建議使用WebAPI,它可以是與MVC相同的項目的一部分,但是您也可以從MVC操作獲得JSON結果:http://stackoverflow.com/questions/227624/asp-net-mvc-controller-actions - 即回報 - JSON-或偏-HTML – 2014-09-02 09:22:25

0

你應該通過API請求到MVC控制器的功能是返回JSON到您的前端和比$ HTTP或$使用數據來這樣做資源將其饋送到您的控制器中。

相關問題