Hi every one,
My requirement is load the localization data dynamically(need to lad the
data from WEB API service), So I am using the $translateProvider in
app.config and calling app.factory in useLoader method , the code is below
. I am getting error like angular.js:3831 Uncaught TypeError: Cannot
read property 'then' of undefined
Can you please help me on this
var app = angular.module('IRISapp', ['ngRoute', 'pascalprecht.translate']);
app.config(['$routeProvider', '$translateProvider', '$httpProvider',
function ($routeProvider, $translateProvider, $httpProvider) {
$translateProvider.useLoader('CustomLoader').preferredLanguage('EN');
$translateProvider.useSanitizeValueStrategy(null);
$translateProvider.fallbackLanguage(['FR', 'EN']);
}]);
app.factory('CustomLoader', function ($http, $q, RestServiceCall,
EndpointsFactory, $rootScope) {
var customLoader = {};
return (function (options) {
var ct = this;
var data = {
'TEXT': 'Fooooo'
};
var deferred = $q.defer();
// do something with $http, $q and key to load localization
files
$rootScope.transalatedata = function () {
EndpointsFactory("GetLanguage", null, ct.localdata);
};
ct.localdata = function (restUrl) {
RestServiceCall('POST', restUrl, null,
// success
function (response) {
data = response;
// $translateProvider.translations('EN', response)
//alert(responseresponse
},
// error
function (data, status, headers, config) {
console.log(data);
//this.message = status;
}
);
};
$rootScope.transalatedata();
alert('before deferred data is' + data);
// data = options;
return deferred.resolve(data);
alert('after deferred data is' + data);
// or
return deferred.reject(options.key);
});
});
--
You received this message because you are subscribed to the Google Groups
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.