帮我写个dotolist用uniqpp写
时间: 2023-08-06 14:07:05 浏览: 248
好的,以下是一个简单的 todo list 的示例代码,使用 uniapp 框架实现:
1. 在 `pages` 目录下新建一个 `index` 目录,创建 `index.vue` 文件,代码如下:
```html
<template>
<div class="todo-list">
<div class="add-todo">
<input type="text" v-model="newTodo" placeholder="添加新的任务" />
<button @click="addTodo">添加</button>
</div>
<ul>
<li v-for="(todo, index) in todos" :key="index">
<input type="checkbox" v-model="todo.completed" />
<span :class="{ completed: todo.completed }">{{ todo.title }}</span>
<button @click="removeTodo(index)">删除</button>
</li>
</ul>
</div>
</template>
<script>
export default {
data() {
return {
newTodo: '', // 新增任务的标题
todos: [], // 任务列表
}
},
methods: {
addTodo() {
if (this.newTodo.trim()) {
this.todos.push({
title: this.newTodo.trim(),
completed: false,
})
this.newTodo = ''
}
},
removeTodo(index) {
this.todos.splice(index, 1)
},
},
}
</script>
<style>
.completed {
text-decoration: line-through;
}
</style>
```
2. 在 `pages.json` 文件中添加以下配置:
```json
{
"pages": [
{
"path": "pages/index/index",
"style": {
"navigationBarTitleText": "Todo List"
}
}
],
"globalStyle": {
"navigationBarBackgroundColor": "#ffffff",
"navigationBarTextStyle": "black"
}
}
```
3. 运行程序即可看到效果。
这个示例代码中,我们定义了一个 `todo-list` 组件,包括一个输入框和一个按钮用于新增任务,以及一个任务列表用于展示已有任务。在新增任务时,我们会将新任务的标题添加到任务列表中,同时将输入框清空。在删除任务时,我们会根据任务在列表中的位置,使用 `splice` 方法将其从列表中删除。
阅读全文