美文网首页让前端飞
Vite+Vue3 项目 华仔待办

Vite+Vue3 项目 华仔待办

作者: 华健课堂 | 来源:发表于2024-08-25 11:10 被阅读0次

此“华仔”,不是彼“华仔”,你懂的!

先来了个截图

紧跟着,实现步骤也来了

1. 安装 Node.js,终端运行 npm create vue@latest,项目名 vue-to-do,后面的选项全选 No

2. cd vue-to-do 进入项目目录,npm install 安装依赖,npm run dev 启动 Vite 开发服务器;

3. 修改 index.htmlmain.js

index.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <link rel="icon" href="/favicon.ico">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>华仔待办</title>
  </head>
  <body>
    <!-- 根组件容器 -->
    <div id="app"></div>
    <script type="module" src="/src/main.js"></script>
  </body>
</html>

src/main.js

import './assets/main.css'

import { createApp } from 'vue'
import App from './App.vue'
// 创建应用 传根组件
createApp(App).mount('#app')

4. 修改 App.vue 根组件,添加 ToDoHead.vue ToDoBody.vue 两个子组件;

src/App.vue

<script setup>
import ToDoHead from './components/ToDoHead.vue';
import ToDoBody from './components/ToDoBody.vue';
</script>

<template>
  <ToDoHead />
  <ToDoBody />
</template>

<style scoped>
</style>

src/components/ToDoHead.vue

<script setup>
</script>

<template>
  <h1>华仔待办</h1>
</template>

<style scoped>
</style>

src/components/ToDoBody.vue

<script setup>
import { ref } from 'vue';
let tasks = ref([])  // ref 对象 任务列表 { name: '任务名', state: '状态' } active completed
let taskName = ref("")  // ref 对象 .value
// 添加任务
function addTask() {
  if (taskName.value.trim() === "") {
    return
  }
  tasks.value.push({
    name: taskName.value,
    state: 'active'
  })
  taskName.value = ""
}
// 完成任务
function completeTask(index) {
  tasks.value[index].state = 'completed'
}
// 删除任务
function deleteTask(index) {
  tasks.value.splice(index, 1)
}
// 删除所有
function deleteAll() {
  tasks.value.splice(0, tasks.value.length)
}
</script>

<template>
  <input type="text" placeholder="请输入任务" v-model="taskName" v-on:keyup.enter="addTask">
  <p v-if="tasks.length === 0">还没有任务,请添加。</p>
  <div>
    <p v-for="(task,index) in tasks" v-bind:class="task.state" v-on:click="completeTask(index)" v-on:dblclick="deleteTask(index)">{{ index+1 }}. {{ task.name }}</p>
  </div>
  <span class="stats">共 {{ tasks.length }} 个</span> <button v-on:click="deleteAll">清理</button>
</template>

<style scoped>
</style>

5. 修改 main.css 页面样式;

src/assets/main.css

.stats {
  color: #888;
}
.completed {
  color: #888;
  text-decoration: line-through;
}

What?You can't understand?

问时迟,那时快。这五个步骤突然化身为五枚金币,不慢不快地,躲进一个金光闪闪的“宝盒”里。大侠!还不快去 take 走?

相关文章

  • 你的认知层次和思维模式决定了你的未来

    文字 | 华仔 配图 | 华仔 编辑 | 华仔 改变认知的自己 认知高度不同的人,看到...

  • 【1205读书清单】做好一件事的五大步骤

    《搞定》 1.收集待办项目 将所有的待办项目写在自己的收集工具上,保持收集工具随时可见。 2.处理待办项目之一 对...

  • vue使用scss

    vite+vue3全局引入scss变量

  • 华仔

    让我见到你吧,活着让我了解到你的一些情况,工作地点啊居住地点啊……那样我可以过去偶遇你

  • 华仔

    我家的狗狗9岁了。 2012年6月份,我带着自己的和我妹的孩子去北京,在清华大学的出租自行车车主旁看到这只狗狗时,...

  • 短篇小说|敬往事一杯酒

    华仔和菲菲是初中同学,华仔坐在菲菲的后面,菲菲的马尾辫是华仔整个青春期的美梦。华仔数学不好,总会在自习的时候轻轻拍...

  • 【人物素描系列】——吾友华仔印象

    吾友华仔印象 —1— 吾友老蒋,其名松华,昵称老蒋或者华仔。六零后生,系孔...

  • 敏捷漫画#74-项目群待办事项列表

    项目群待办事项列表(The Program Backlog) 作者评论: 首先要就项目群待办事项列表(Progra...

  • 嗨,好久不见!

    “主持人真是没眼力见,华仔的声音都沙哑了也没说声“华仔,喝口水”,真是扫兴。”看着华仔《把我唱给你听》的抖音直播,...

  • 烈火情缘

    “滴滴”华仔骑着他的建设~125从门前而过,我喊华仔下来坐一会,华仔说不坐了,要去合作社买点东西,回去还要帮小月准...

网友评论

    本文标题:Vite+Vue3 项目 华仔待办

    本文链接:https://www.haomeiwen.com/subject/rfnnkjtx.html