我使用Yeoman,Grunt和Bower構建一個獨立於後端的前端構建平臺。我的想法是,我所有的(AngularJS)控制器,服務,工廠等都在這個項目中,然後根據grunt構建的結果注入到我的serverside代碼庫中。使用Grunt模擬端點
我的問題是:
我怎麼能嘲笑的端點,這樣繁重的服務器響應相同的端點我(Rails)的應用程序會?
目前我使用:
angular.module('myApp', ['ngResource'])
.run(['$rootScope', function ($rootScope) {
$rootScope.testState = 'test';
}]);
然後在我的每一個單獨的服務:
mockJSON = {'foo': 'myMockJSON'}
而且在每次方法:
if($rootScope.testState == 'test'){
return mockJSON;
}
else {
real service logic with $q/$http goes here
}
然後grunt build
後, testState = 'test'
被刪除。
這顯然是一個比較笨拙的建築。我怎樣才能避免它?我如何讓Grunt對我的應用程序(其中一些具有動態參數)應用相同的端點應用一些邏輯(如有必要)並提供一個json文件(可能取決於路徑參數)?
這工作得很好,但我怎麼能在重裝的lib/server.js變化無需重新啓動服務器? – pablomolnar
這不是一個問題我最終修改了lib/server的更改並不常見(它是一個小公司)如果你想出一個 –
@pablomolnar,我絕對會喜歡聽你的解決方案我寫的插件(下面的答案)允許您在dev服務器仍在運行時修改模擬響應。 http://stackoverflow.com/a/25714447/895309 –