手记

vue 通过过滤器格式化时间ios出现NaN的问题

做项目的时候遇到一个问题,用定义了一个过滤器格式化时间,电脑上看很完美,放到ios上一看傻眼了,显示NaN,一番百度之后发现问题是ios上识别不来“2020-09-23”这种时间格式,所以就把“-”,替换成‘/’就解决了
上代码

<template lang='pug'>
span.time {{ item.evaluateTime | formatter('yyyy-mm-dd') }}
</template>

filters: {
    formatter(time, pattern = "") {
      var format = time.replace(/-/g, "/"); //把“-”,替换成‘/’
      var date = new Date(format),
        y = date.getFullYear(),
        m = (date.getMonth()+1).toString().padStart(2, 0),
        d = date.getDate().toString().padStart(2, 0),
        h = date.getHours().toString().padStart(2, 0),
        mi = date.getMinutes().toString().padStart(2, 0),
        se = date.getSeconds().toString().padStart(2, 0);
      if (pattern == "yyyy-mm-dd") {
        return `${y}.${m}.${d}`;
      } else {
        return `${y}-${m}-${d} ${h}:${mi}:${se}`;
      }
    },
  },
2人推荐
随时随地看视频
慕课网APP

热门评论

大佬666666666666

查看全部评论