【发布时间】:2015-08-25 11:58:17
【问题描述】:
我正在使用 ionic 框架开发移动应用程序。我已经创建了一个像这样的通用实用程序服务
.service('CommonUtilityService', function($q) {
return {
parseJsonDate:function(jsonDate){
var offset = new Date().getTimezoneOffset() * 60000;
var parts = /\/Date\((-?\d+)([+-]\d{2})?(\d{2})?.*/.exec(jsonDate);
if (parts[2] == undefined)
parts[2] = 0;
if (parts[3] == undefined)
parts[3] = 0;
return new Date(+parts[1] + offset + parts[2]*3600000 + parts[3]*60000);
},
daysBetween:function(date1String, date2String){
var ONE_DAY = 1000 * 60 * 60 * 24;
var ONE_MINUTE = 1000 * 60;
var d1 = new Date(date1String);
var d2 = new Date(date2String);
var d1_ms = d1.getTime() - d1.getTimezoneOffset() * ONE_MINUTE;
var d2_ms = d2.getTime() - d2.getTimezoneOffset() * ONE_MINUTE;
return Math.floor(d1_ms - d2_ms/ONE_DAY);
},
getNumberOfDays:function(jsonDate){
// var date = parseJsonDate(jsonDate);
var date = new Date();
var today = new Date();
return this.daysBetween(today,date);
}
}
})
当我试图在 getNumberOfDays 函数中调用 daysBetween 函数时,它给出了错误
this.daysBetween is not a function
谁能告诉我如何在 getNumberOfDays 函数中调用 daysBetween 函数。
【问题讨论】:
-
试试这个 CommonUtilityService.daysBetween(today,date)
-
已经尝试过但没有用。它给了 CommonUtilityService 未定义错误。
-
试试这个:像这样在你的函数中创建一个变量:var selfFunction = this;并返回 selfFunction.daysBetween(today,date);
-
已经试过但同样的错误。
-
你是怎么调用
getNumberOfDays函数的?
标签: javascript angularjs ionic-framework ionic angularjs-service