微信小程序手写文件解决日期少一天且格式无法切割问题

编译环境

微信开发者工具

问题

在小程序中无法实现对日期的切割,并且可能会出现日期少一天的问题,这个问题可以由后端进行解决,也可以前端,这里用了前端新建一个wxs转换文件进行解决。
比如数据库中的数据是2024-03-02… 但是返回给前端的是2024-03-01…

第一步

utils文件夹下新建一个文件名叫filter.wxs,这个文件主要的价值就是进行日期转换和添加1一天的操作。

添加内容

function addOneDay(dateStr) {
  var parts = dateStr.split('-');
  var year = parseInt(parts[0], 10);
  var month = parseInt(parts[1], 10);
  var day = parseInt(parts[2], 10);

  day += 1;

  var daysInMonth = getDaysInMonth(year, month);
  if (day > daysInMonth) {
    day = 1;
    month += 1;
    if (month > 12) {
      month = 1;
      year += 1;
    }
  }

  return formatYearMonthDay(year, month, day);
}

function getDaysInMonth(year, month) {
  switch (month) {
    case 1: case 3: case 5: case 7: case 8: case 10: case 12:
      return 31;
    case 4: case 6: case 9: case 11:
      return 30;
    case 2:
      if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) {
        return 29;
      } else {
        return 28;
      }
    default:
      return 30; 
  }
}

function formatYearMonthDay(year, month, day) {
  var monthStr = month < 10 ? '0' + month : '' + month;
  var dayStr = day < 10 ? '0' + day : '' + day;
  return year + '-' + monthStr + '-' + dayStr;
}

module.exports = {
  addOneDay: addOneDay
}

在wxml文件中引入这个文件

<wxs module="filter" src="/utils/filter.wxs"></wxs>

使用

<text>日期: {{filter.addOneDay(ldate)}}</text>

解决,如果有兴趣看点解决问题的过程,请往下看

详解代码

在上述文件中我们创建了三个函数,第一个函数add主要是用户对日期的添加,因为微信开发者工具不允许使用部分date函数,这里我们用到的是parseInt来进行切割,并且考虑到了年初和闰月的问题,最后调用一个日期格式化的函数。返回的就是添加一天且日期格式化的函数。但是格式是yyyy-mm-dd,如果想要别的格式的朋友也自行切割添加即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/579613.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringCloud(微服务介绍,远程调用RestTemplate,注册中心Nacos,负载均衡Ribbon,环境隔离,进程和线程的区别)【详解】

目录 一、微服务介绍 1. 系统架构的演变 1 单体架构 2 分布式服务 3 微服务 2. SpringCloud介绍 SpringCloud简介 SpringCloud版本 3. 小结 二、远程调用RestTemplate【理解】 1. 服务拆分 1 服务拆分原则 2 服务拆分示例 1) 创建父工程 2) 准备用户服务 1. 用户…

Docker数据管理与Dockerfile镜像创建

前言 在容器化环境中&#xff0c;如何有效地管理和持久化数据成为了开发人员和运维团队面临的挑战之一&#xff1b;另一方面&#xff0c;镜像的创建是构建容器化应用的基础。优化的镜像设计可以提高部署效率和应用性能&#xff0c;减少资源消耗和运行成本。本文将介绍 Docker …

锂电池SOH预测 | 基于LSTM的锂电池SOH预测(附matlab完整源码)

锂电池SOH预测 锂电池SOH预测完整代码锂电池SOH预测 锂电池的SOH(状态健康度)预测是一项重要的任务,它可以帮助确定电池的健康状况和剩余寿命,从而优化电池的使用和维护策略。 SOH预测可以通过多种方法实现,其中一些常用的方法包括: 容量衰减法:通过监测电池的容量衰减…

锂电池SOH预测 | 基于CNN-GRU的锂电池SOH预测(matlab)

锂电池SOH预测 锂电池SOH预测完整代码锂电池SOH预测 锂电池的SOH(状态健康度)预测是一项重要的任务,它可以帮助确定电池的健康状况和剩余寿命,从而优化电池的使用和维护策略。 SOH预测可以通过多种方法实现,其中一些常用的方法包括: 容量衰减法:通过监测电池的容量衰减…

【Docker】Docker 实践(三):使用 Dockerfile 文件构建镜像

Docker 实践&#xff08;三&#xff09;&#xff1a;使用 Dockerfile 文件构建镜像 1.使用 Dockerfile 文件构建镜像2.Dockerfile 文件详解 1.使用 Dockerfile 文件构建镜像 Dockerfile 是一个文本文件&#xff0c;其中包含了一条条的指令&#xff0c;每一条指令都用于构建镜像…

解决VMware启动异常

问题1&#xff1a;该虚拟机似乎正在使用中。如果该虚拟机未在使用&#xff0c;请按“获取所有权(T)”按钮获 取它的所有权。否则&#xff0c;请按“取消(C)”按钮以防损坏。 解决步骤&#xff1a; 按弹框提示的配置文件目录下删除后缀为lck的文件&#xff08;lock&#xff09;。…

Facebook的未知力量:数字世界的新引擎

在数字化的时代&#xff0c;社交媒体已经成为了我们日常生活中不可或缺的一部分&#xff0c;而Facebook作为其中的巨头&#xff0c;其影响力远远超出了我们的想象。但是&#xff0c;Facebook背后隐藏的力量和影响远不止于此&#xff0c;它正逐渐成为数字世界的新引擎&#xff0…

C语言-动态内存分配

即使行动导致错误&#xff0c;却也带来了学习与成长;不行动则是停滞与萎缩。&#x1f493;&#x1f493;&#x1f493; •&#x1f319;知识回顾 亲爱的友友们大家好&#xff01;&#x1f496;&#x1f496;&#x1f496;&#xff0c;我们紧接着要进入一个新的内容&#xff0c;…

STM32单片机C语言模块化编程实战:按键控制LED灯详解与示例

一、开发环境 硬件&#xff1a;正点原子探索者 V3 STM32F407 开发板 单片机&#xff1a;STM32F407ZGT6 Keil版本&#xff1a;5.32 STM32CubeMX版本&#xff1a;6.9.2 STM32Cube MCU Packges版本&#xff1a;STM32F4 V1.27.1 之前介绍了很多关于点灯的方法&#xff0c;比如…

微信小程序的常用API②

一、动画API &#xff08;1&#xff09;作用&#xff1a;用于在微信小程序中完成动画效果的制作 &#xff08;2&#xff09;使用&#xff1a;创建实例 wx.createAnimation() &#xff08;3&#xff09;常用属性&#xff1a; duration 【number型】 动画持续时间&…

Qt的qtmqtt库连接onenet出现QMQTT::SocketRemoteHostClosedError解决方法

问题描述 在Qt发开过程中使用qtmqtt库来连接onenet的mqtt服务器&#xff0c;在ClientId、Username和Password均填写正确的情况下还是连接不上&#xff0c;查看错误显示QMQTT::SocketRemoteHostClosedError。 解决方法 client中的CleanSession标志位必须设置为true。 client …

分子动力学模拟学习-Gromacs工具链

1、总体流程 在gromacs的使用说明中有一个flow chart&#xff0c;比较简略。以下针对一般体系&#xff08;非蛋白等领域&#xff09;进行了一些调整&#xff0c;通用性更强。 在做分子动力学模拟时&#xff0c;其复杂性除了以上各种输入输出文件的操作&#xff0c;另一点就是力…

眼图仪参数理解和一些测量指标

参考资料&#xff1a; https://www.eet-china.com/mp/a35960.html 一&#xff1a;关于眼图仪&#xff1a; :::warning ●如果追溯历史&#xff0c;大约47年前&#xff0c;眼图就已经开始广泛应用。在1962年-2002的40年间&#xff0c;眼图的测量方法是基于采样示波器的传统方法…

3GPP相关资料收集整理

1、3GPP介绍 主页&#xff1a;3GPP – The Mobile Broadband Standard 3GPP(3rd Generation Partnership Project,第三代合作伙伴计划)成立于1998年12月&#xff0c;多个电信标准组织伙伴共同签署了《第三代伙伴计划协议》。3GPP最初的工作范围是为第三代移动通信系统制定全球适…

IDEA实现Springboot项目自动热部署

每当我们在修改代码时&#xff0c;往往需要重新启动项目&#xff0c;这样不仅浪费时间而且很麻烦&#xff0c;我们可以通过IDEA的热部署来提高效率 1、首先点file >> settings >> Build Excution >> Compire&#xff0c;选择Build project auto matically 2.…

linux kernel内存泄漏检测工具之slub debug

一、背景 slub debug 是一个debug集&#xff0c;聚焦于kmem_cache 分配机制的slub内存&#xff08;比如kmalloc&#xff09;&#xff0c;这部分内存在内核中使用最频繁&#xff0c;slub debug其中有相当部分是用来处理内存踩踏&#xff0c;内存use after free 等异常的&#x…

虚良SEO多口子权重蜘蛛池怎么正确使用

一、蜘蛛池的工作原理 蜘蛛池的核心在于通过大量的页面和内容&#xff0c;提高网站的搜索引擎排名&#xff0c;从而获得更多的流量和曝光机会。这种策略通常被用于网站推广和SEO优化。通过将网站链接发布到蜘蛛池中&#xff0c;可以增加网站的曝光率&#xff0c;吸引更多的搜索…

数据结构与算法--稀疏数组

1.引入 比如在编写五子棋时要实现存盘退出和继续上盘的功能。 如果使用二维数组来记录&#xff0c;每行每列&#xff0c;白子对应2&#xff0c;黑子对应1&#xff0c;默认值对应0.然后这里黑子对应二维数组a[1][2]。白子对应二维数组a[2][3]。 如果棋子很少&#xff0c;那么这…

AtCoder Regular Contest 176 C. Max Permutation(计数 分类讨论)

题目 思路来源 乱搞ac 题解 1. 如果有边的权值是1&#xff0c;意味着有两个点的权值都是1&#xff0c;无解 2. 如果一个点i被多个max条件控制&#xff0c;它的值不能超过这些max里最小的那个&#xff0c;记做up[i] 3. 如果同一个权值w对应的边不少于2条&#xff0c;这些边…

Spring Task学习记录

介绍 cron表达式 cron表达式在线生成器 链接: link 入门案例 Component Slf4j public class MyTask {/*** 定时任务 每隔5秒触发1次*/Scheduled(cron "0/5 * * * * ?")public void executeTask(){log.info("定时任务开始执行&#xff1a;{}", new Date…
最新文章