小程序样例3:根据日历创建待办事项

这篇具有很好参考价值的文章主要介绍了小程序样例3:根据日历创建待办事项。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基本功能

1、待办事项查看

小程序样例3:根据日历创建待办事项,小程序开发,小程序

选择不同的日期显示不同的待办:

小程序样例3:根据日历创建待办事项,小程序开发,小程序小程序样例3:根据日历创建待办事项,小程序开发,小程序

2、选择日期后 新增事项:

小程序样例3:根据日历创建待办事项,小程序开发,小程序小程序样例3:根据日历创建待办事项,小程序开发,小程序

3. 点击事项,查看详情

小程序样例3:根据日历创建待办事项,小程序开发,小程序小程序样例3:根据日历创建待办事项,小程序开发,小程序

4、删除事项:删除事项3之后,剩余事项2

小程序样例3:根据日历创建待办事项,小程序开发,小程序

5、点击日期可以选择更多的月:

小程序样例3:根据日历创建待办事项,小程序开发,小程序

实现思路:

1、数据结构:

{     level: 1, 
      _id: 1,
      title: '事项1',
      content: '内容1',
      year: 2024,
      month: 1,
      date: 23,
      addDate: '2024-01-20'
}

2、代码结构:

小程序样例3:根据日历创建待办事项,小程序开发,小程序

DataService 是服务层接口,业务JS代码与之打交道

同时Service调用Repository接口,实现数据的增加、删除、查询

例如查询当天的待办:

业务JS层代码:调用DataService.findByDate

function loadItemListData() {
  console.log('loadItemListData')
  console.log(this.data.data.selected)
  const {year, month, date} = this.data.data.selected;
  let _this = this;
  DataService.findByDate(new Date(year, month, date)).then((data) => {
    if(data) {
      _this.setData({ itemList: data });
    } else {
      console.log('findByDate get data empty')
    }
  });

}

Service层代码:调用DataRepository.findBy

static findByDate(date) {
        console.log('in findByDate year:' + date.getFullYear() + ' month:' + date.getMonth() + ' day:' + date.getDate())
        if (!date) {
          return []
        } ;
        console.log('before findBy')
        return DataRepository.findBy(item => {
            console.log('current item year:' + item['year'] + ' month:' + item['month'] + ' date:' + item['date']);
            console.log(item);
            return item && item['date'] == date.getDate() &&
                item['month'] == date.getMonth() &&
                item['year'] == date.getFullYear();
        }).then(data => data);
    }

Repository层代码:

static findBy(predicate) {
        console.log('in findBy');
        return DataRepository.findAllData().then((data) => {
          console.log('in findBy result');
          if (data) {
              data = data.filter(item => predicate(item));
              console.log('after filter');
              console.log(data)
              return data;
          } else {
            console.log('data is empty:' + data)
          }
          return data;
        });
    }

代码使用Promise风格 简化了callback的方式

踩坑记录:

1、通过选中的年月日,构造Date对象时,调用getDay()获取星期的时候,不正确。

需要将month-1

参考:js getday()获取值不对_dayjs().get('day') 时间不对-CSDN博客

2、promise运用不熟练,有些地方需要return

参考:微信小程序Promise详解_笔记大全_设计学院

 比如此处:如果没有return,调用findAllData后续then的时候拿不到data值小程序样例3:根据日历创建待办事项,小程序开发,小程序

完整代码下载:

 https://download.csdn.net/download/u200814342A/88778500

 

个人小程序创业项目   #小程序://朋友圈子/VMEWRjrOTum4Soa  有想法的朋友可以一起交流下~文章来源地址https://www.toymoban.com/news/detail-823312.html

到了这里,关于小程序样例3:根据日历创建待办事项的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 详解微信小程序开发中的“数据绑定”和代码样例

    首先需要区分微信小程序的运行环境和框架系统。运行环境为小程序在手机当中运行的时候,微信客户端所能提供的环境支持,也就是在这种环境下如何进行数据渲染工作;框架系统则是微信小程序在进行开发的过程中,如何通过代码实现数据绑定,以及在这种框架下,是如

    2024年02月11日
    浏览(43)
  • 企业小程序开发步骤【教你创建小程序】

    随着移动互联网的兴起,微信已经成为了很多企业和商家必备的平台,而其中,微信小程序是一个非常重要的工具。本文将为大家介绍小程序开发步骤,教你创建小程序。 步骤一、注册小程序账号 先准备一个小程序账号,在微信公众平台的网站上注册即可。注册时要注意,

    2024年02月11日
    浏览(42)
  • Vue待办事项的实现

    !DOCTYPE html html     head         meta charset=\\\"utf-8\\\"         title/title     /head     body         style             * {                 padding: 0;                 margin: 0;             }             ul,             ol {                 list-style: none;

    2024年01月17日
    浏览(51)
  • Vue待办事项(选项卡)

    !DOCTYPE html html     head         meta charset=\\\"utf-8\\\"         title/title         style             * {                 padding: 0;                 margin: 0;             }             ul,             ol {                 list-style: none;             }  

    2024年01月17日
    浏览(49)
  • 微信小程序开发系列(三)·微信小程序页面的创建、小程序如何更改调试基础库

    零基础手把手教你创建微信小程序(一)·微信小程序开发账号的注册以及开发者工具的安装和使用-CSDN博客 零基础手把手教你创建微信小程序(二)·创建第一个微信小程序以及了解小程序代码的构成-CSDN博客 目录 1.  小程序页面的创建 1.1  方法一 1.2  方法二 2.  小程序如

    2024年04月26日
    浏览(57)
  • 手机待办事项app哪个好?

    手机是日常很多人随身携带的设备,手机除了拥有通讯功能外,还能帮助大家高效管理日常工作,借助手机上的待办事项提醒APP可以快速地帮助大家规划日常事务,提高工作的效率。 过去,我也曾经在寻找一款能够将工作任务清晰罗列的APP时,在通过对多款软件进行对比后,

    2024年02月07日
    浏览(42)
  • 用Vue做一个待办事项

            这个待办事项有以下功能:增删查,既新增待办事项,删除待办事项,查看全部,未完成,完成待办事项,当鼠标移动到待办事项上时会显示删除按钮         分为四个部分来实现:ToDoHeader.vue、ToDoMain.vue、ToDoFooter.vue、ToDoList.vue 头部部分 列表总体样式和删除样

    2024年04月25日
    浏览(39)
  • Vue待办事项(组件,模块化)

    //html页面代码 !DOCTYPE html html     head         meta charset=\\\"utf-8\\\"         title/title         style             * {                 padding: 0;                 margin: 0;             }             ul,             ol {                 list-style: none;     

    2024年01月21日
    浏览(54)
  • 宜搭低代码开发师(高级)创建待办列表应用 流程截图及实例代码(避坑专用)

    目录 目标: 操作步骤: 一、主要涉及的接口 二、代码及说明步骤 试题截图及步骤代码说明,很快完成考试。 这里基础的两个页面创建很简单,直接省略。 直接说自定义页面——Todolist 接口文档: 跨应用数据源API | 钉钉宜搭·帮助中心 ①、获取待办 :/dingtalk/web/APP_XXXXXX

    2024年02月16日
    浏览(137)
  • day49-Todo List(待办事项列表)

    效果 index.html style.css script.js

    2024年02月14日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包