我使用基本示例角度缓存,但出现此错误
angular.module("eliteApp",["ionic","angular-data.DSCacheFactory"])
.run(function($ionicPlatform , DSCacheFactory) {
$ionicPlatform.ready(function() {
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
// for form inputs)
if (window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if (window.StatusBar) {
// org.apache.cordova.statusbar required
StatusBar.styleDefault();
}
DSCacheFactory("leagueDataCache", { storageMode: "localStorage", maxAge: 5000, deleteOnExpire: "aggressive" });
DSCacheFactory("leaguesCache", { storageMode: "localStorage", maxAge: 5000, deleteOnExpire: "aggressive" });
DSCacheFactory("myTeamsCache", { storageMode: "localStorage" });
DSCacheFactory("staticCache", { storageMode: "localStorage" });
});
})
.factory('eliteApi',['$http','$q', '$ionicLoading','$timeout','DSCacheFactory', function( $http , $q , $ionicLoading , DSCacheFactory ,$timeout ) {
var currentLeagueId;
self.leagueDataCache = DSCacheFactory.get("leagueDataCache");
self.leaguesCache = DSCacheFactory.get("leaguesCache");
<script src="lib/lodash/dist/lodash.min.js"></script>
<script src="lib/angular-cache/dist/angular-cache.min.js"></script>
<script src="cordova.js"></script>
它不知道函数得到的问题我不知道为什么我
self.leagueDataCache = DSCacheFactory.get("leagueDataCache"); self.leaguesCache = DSCacheFactory.get("leaguesCache");
最佳答案
你的问题是这条线
.factory('eliteApi',['$ http','$ q','$ ionicLoading','$ timeout','DSCacheFactory',function($ http,$ q,$ ionicLoading,DSCacheFactory,$ timeout){
您需要以与在函数中使用它们相同的顺序声明注入的模块。
$ http => $ http
$ q => $ q
$ ionicLoading => $ ionicLoading
$ timeout => DSCacheFactory
DSCacheFactory => $ timeout
因此,您实际上正在尝试使用$ timeout的get函数,该函数不存在。
GrüßeausmAllgäu!