加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – angular-pickadate timezone – selectedDate是其

发布时间:2020-12-17 10:24:28 所属栏目:安全 来源:网络整理
导读:angular-pickadate适用于我当地时间.为了查看全球时间,我已将时区更改为“America / Denver”.现在选择日期是在今天的日期前一天(通过模态日期),所以它将“pickadate-active”类应用于昨天. 我尝试使用本地时区和UTC时区传递模态日期.我不知道为什么dateHelp
angular-pickadate适用于我当地时间.为了查看全球时间,我已将时区更改为“America / Denver”.现在选择日期是在今天的日期前一天(通过模态日期),所以它将“pickadate-active”类应用于昨天.
我尝试使用本地时区和UTC时区传递模态日期.我不知道为什么dateHelper.parseDate再次调用先前传递的剥离时区值,现在我的理解是$locale正在转换剥离日期,假设它是UTC日期到本地日期.因此,在格林威治标准时间-06:00之前,所选日期将在之前的一个日期.

HTML DIV – < div pickadate ng-model =“vm.date”ng-model-options =“{debounce:0}”header =“true”select =“true”date-highlight-list =“vm.dateList” >< / DIV> Controller – vm.date = moment().tz(timeZoneName).format(); 有人可以建议一种方法来处理不同的时区与angular-pickadate?谢谢 !
GIT指令URL – https://github.com/restorando/angular-pickadate

parseDate函数按照GMT时区给出了日期对象,所以日期变得少了一天.所以我删除了这个条件,它直接返回带有时区的传递日期字符串的GMT日期.
if (angular.isDate(dateString) || angular.isDate(new Date(dateString))) {
new Date(dateString); }

现在它转到下一个if块用regex格式化日期并在那里添加这个条件来处理日期字符串和日期对象 –

if(typeof dateString == 'object') {
  dateString = (dateString['_d'])? dateString['_d']: dateString['_i'];  // being private (_d,_i) should be avoided but only way in mine case
  if(typeof dateString == 'object')  // returns Object by dateString['_d'] else string 
    dateString = dateString.getDate() +'-'+ dateString.getMonth() +'-' +dateString.getFullYear(); 
}

dateParts   = dateString.split(separator); // separator was "-" every time so making dateString with "-" in case it was object

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读