微信小程序实现一个todolist这样的小demo

小程序实现todolist

下面是一个简单的待办事项清单应用的示例,它包括添加任务、完成任务和删除任务的功能。

app.json 文件中

{
   
  "pages": [
    "pages/index/index",
    "pages/todoList/todoList"
  ],
  "window": {
   
    "navigationBarTitleText": "Todo List"
  }
}

创建 pages/todoList/todoList.js 文件

Page({
   
  data: {
   
    todoList: []
  },
  onLoad: function() {
   
    this.loadTodoList();
  },
  loadTodoList: function() {
   
    // 从本地存储中加载待办事项列表
    const todoList = wx.getStorageSync('todoList');
    if (todoList) {
   
      this.setData({
   
        todoList: JSON.parse(todoList)
      });
    }
  },
  addTodo: function(e) {
   
    const value = e.detail.value;
    if (value) {
   
      const todo = {
   
        id: new Date().getTime(),
        content: value,
        completed: false
      };
      const todoList = [...this.data.todoList, todo];
      this.setData({
   
        todoList
      });
      wx.setStorageSync('todoList', JSON.stringify(todoList));
    }
  },
  completeTodo: function(e) {
   
    const id = e.currentTarget.dataset.id;
    const todoList = this.data.todoList.map(todo => {
   
      if (todo.id === id) {
   
        todo.completed = true;
      }
      return todo;
    });
    this.setData({
   
      todoList
    });
    wx.setStorageSync('todoList', JSON.stringify(todoList));
  },
  deleteTodo: function(e) {
   
    const id = e.currentTarget.dataset.id;
    const todoList = this.data.todoList.filter(todo => todo.id !== id);
    this.setData({
   
      todoList
    });
    wx.setStorageSync('todoList', JSON.stringify(todoList));
  }
})

创建 pages/todoList/todoList.wxml 文件

<view class="container">
  <view class="header">
    <text>待办事项:</text>
    <input type="text" bindconfirm="addTodo" placeholder="请输入任务内容" />
  </view>
  <view class="list">
    <block wx:for="{
   {todoList}}">
      <view class="item {
   {item.completed ? 'completed' : ''}}">
        <text>{
   {
   item.content}}</text>
        <button bindtap="completeTodo" data-id="{
   {item.id}}">完成</button>
        <button bindtap="deleteTodo" data-id="{
   {item.id}}">删除</button>
      </view>
    </block>
  </view>
</view>

当你输入任务内容并按下回车键时,任务将被添加到待办事项清单中。
点击任务后面的"完成"按钮,任务将被标记为已完成,并在界面上显示为灰色。
点击任务后面的"删除"按钮,任务将从待办事项清单中删除。
这个示例只是一个简单的待办事项清单应用,你可以根据自己的需求进行扩展和修改。

到这里也就结束了,希望对您有所帮助。

相关推荐

  1. 程序实现一个todolist这样demo

    2023-12-22 19:40:04       42 阅读
  2. 程序实现一个简单登录功能

    2023-12-22 19:40:04       39 阅读
  3. 程序实现一个音乐播放器功能

    2023-12-22 19:40:04       39 阅读
  4. 程序实现一个天气预报应用程序

    2023-12-22 19:40:04       43 阅读
  5. 程序实现一个电影信息查询应用程序

    2023-12-22 19:40:04       38 阅读
  6. 程序一个录音机

    2023-12-22 19:40:04       5 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-22 19:40:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-22 19:40:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-22 19:40:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-22 19:40:04       20 阅读

热门阅读

  1. C语言中关于函数和数组的理解

    2023-12-22 19:40:04       39 阅读
  2. 除了增删改查,后端一定要学会这些!

    2023-12-22 19:40:04       47 阅读
  3. 学习鸿蒙开发需要报培训班吗?

    2023-12-22 19:40:04       53 阅读
  4. STM32F072 CAN and USB

    2023-12-22 19:40:04       27 阅读
  5. Spring之事务(2)

    2023-12-22 19:40:04       30 阅读
  6. Socket 类的 Shutdown

    2023-12-22 19:40:04       37 阅读