所以我正在研究一箇中等大小的Rails應用程序,並且我正在嘗試學習Angular並將其添加到應用程序中。我已經看了一些教程,它似乎是獲得的初始數據和渲染初始視圖最常用的方法是如下在Angular中使用Rails後端呈現的初始視圖
phonecatControllers.controller('PhoneListCtrl', ['$scope', 'Phone', function($scope, Phone) {
$scope.phones = Phone.query();
$scope.orderProp = 'age';
}]);
var phonecatServices = angular.module('phonecatServices', ['ngResource']);
phonecatServices.factory('Phone', ['$resource',
function($resource){
return $resource('phones/:phoneId.json', {}, {
query: {method:'GET', params:{phoneId:'phones'}, isArray:true}
});
}]);
於是方式發出控制器構造函數/初始化一個GET請求這個工作是瀏覽器發出初始請求並加載javascript/angular,然後發出第二個請求來獲取數據,一旦它接收到它呈現頁面的數據。
我最初的想法是呈現初始頁面視圖服務器端,但谷歌搜索後它似乎並沒有這樣做是一種流行或好方法(將不得不在客戶端和服務器上覆制大量的模板/邏輯?)
我的第二個想法是在json/javascript中的軌道端渲染/存儲的初始數據,並有角度從那裏獲取初始數據,而不是對數據發出ajax請求。在初始化之後,隨後的請求可以發出ajax請求,但是這會避免一開始的往返請求。有沒有其他人試過這個方法,我應該知道這種方法有什麼問題嗎?