2013-06-19 71 views
1

只是想知道你的想法西隧將是我在如何將外部JSON數據文件存儲到服務方式來保存在服務JSON數據文件,這樣我就可以把它注射到不同的控制器如何使用angularjs

謝謝

回答

0

嗯,這一切都取決於你的應用程序的體系結構,但我想你可以創建一個工廠或服務來存儲數據,然後簡單地在需要的地方注入工廠。

如果數據需要持久化,我會使用localStorage之類的東西。如果數據量非常小,且您的應用程序無法支持HTML5,我會使用Cookie。

你越詳細闡述你會得到更準確的答案。

0

嘗試使用ngTranslation模塊。 這個服務,你可以存儲靜態內容(一些JSON文件等等)的代碼外,並不會弄髒你的控制器/服務...

例:
JS:

angular.module('app', ['ng-translation']) 
    .config(['ngTranslationProvider', function(ngTranslationProvider) { 
    ngStaticProvider 
     .setDirectory('/assets/static') 
     .setFilesSuffix('.json') 
     .langsFiles({ 
     demo1: 'demo1', 
     demo2: 'demo2' 
     }) 
    }]); 

//inject to controller 
function PanelController($scope, translateFilter) { 
    $scope.panelContent = translateFilter('key','fileName') 
} 

HTML:

<!-- use as a filter {{ key | translate: fileName }}--> 
<p>{{ key | translate: fileName }}</p> 

<!-- use ng-translate directive, similar to ng-bind--> 
<p ng-translate="file(key)"></p>