From a92436c1f4fd0036f27f19d07688ffe6367fe2fd Mon Sep 17 00:00:00 2001 From: alinhu1 Date: Wed, 19 Mar 2025 09:34:22 +0800 Subject: [PATCH] docs: add react ts (#25) --- docs/react/_category_.json | 7 ++ docs/react/react_todo_list.md | 198 ++++++++++++++++++++++++++++++++++ docs/react/react_ts.md | 33 ++++++ docs/react/result2.png | Bin 0 -> 65427 bytes 4 files changed, 238 insertions(+) create mode 100644 docs/react/_category_.json create mode 100644 docs/react/react_todo_list.md create mode 100644 docs/react/react_ts.md create mode 100644 docs/react/result2.png diff --git a/docs/react/_category_.json b/docs/react/_category_.json new file mode 100644 index 0000000..359db7a --- /dev/null +++ b/docs/react/_category_.json @@ -0,0 +1,7 @@ +{ + "label": "react的入门", + "position": 13, + "link": { + "type": "generated-index" + } +} \ No newline at end of file diff --git a/docs/react/react_todo_list.md b/docs/react/react_todo_list.md new file mode 100644 index 0000000..33211fc --- /dev/null +++ b/docs/react/react_todo_list.md @@ -0,0 +1,198 @@ +--- +sidebar_position: 1 +--- + +# 如何使用react+ts编写前端todo list +本文将编写一个简单的前端todo list应用,从进入项目后,逐步实现增加,删除,筛选的功能 + +## 先决条件 +1. 已创建react ts工程 + +>**提示** +若未创建react ts工程,可以参考[使用vite创建react ts工程](http://localhost:3000/full-stack-tutorial/docs/react/react_ts)文档 + +## 项目初始化 +打开react ts工程 + +## 编写todo list结构及功能 +在`App.tsx`中,通过以下代码,设计结构并实现todo list的功能 +``` +//导入依赖 +import React, { useState } from 'react' +import './App.css' + +//定义全局变量,用于生成新数组的id +let nextId = 4 + +function App() { + + //定义数组 + const [products, setProducts] = useState([ + { name: '吃饭', completed: false, id: 1 }, + { name: '睡觉', completed: true, id: 2 }, + { name: '打豆豆', completed: true, id: 3 }, + ]) +const [inputValue, setinputValue] = useState('') + + + + //在input中输入的值 + const handleInputValue = (event: React.ChangeEvent) => { + const value = event.target.value; + setinputValue(value) + console.log('当前的值', value); + + } + + //在输入框中按下回车键的事件 + const handleKeyDown = (event: React.KeyboardEvent) => { + if (inputValue === '') { + return + } + if (event.key === 'Enter') { + const newProduct = { + name: inputValue.trim(), + completed: false, + id: nextId++ + } + + setProducts([...products, newProduct]); + setinputValue('') + console.log(`按下回车键的值:${inputValue}`); + } + + } + + //切换completed的状态 + const CompleteStatus = (id:number)=>{ + setProducts( + products.map((product) => + product.id === id ? {...product,completed: !product.completed} : product) + ) + } + + //筛选功能的实现 + const [filter,setFilter] = useState<'all'|'active'|'completed'>('all') + + const onShow = products.filter((product) => { + if(filter === 'active'){ + return !product.completed + }else if(filter === 'completed'){ + return product.completed + }else{ + return true + } + }) + + const count = products.filter((product) => !product.completed).length + + //渲染组件 + return ( + <> +
+

TODO LIST

+ +
    + {/* {TodoItem} */} + {onShow.map(product => ( +
  • {product.name}{' '} + CompleteStatus(product.id)} + > + {' '} + +
  • + ))} + +
+
+ 还有{count}个未完成 +
筛选 + + + +
+
+
+ + + ) +} + +export default App +``` +## 设计todo list的样式 +在`App.css`中,通过以下代码,设计todo list的样式 +``` +#root { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.react:hover { + filter: drop-shadow(0 0 2em #61dafbaa); +} + +@keyframes logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +@media (prefers-reduced-motion: no-preference) { + a:nth-of-type(2) .logo { + animation: logo-spin infinite 20s linear; + } +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} + +.icon-complete{ + display: inline-block; + width: 20px; + height: 20px; + border: solid 1px #ddd; + border-radius: 50%; +} + +.icon-complete-active::after{ + content: '√'; + color: green; +} +``` + +## 运行项目 +按下快捷键`Ctrl + ~`,打开终端,输入以下命令,运行项目 +``` +npm run dev +``` +![运行结果](./result2.png) \ No newline at end of file diff --git a/docs/react/react_ts.md b/docs/react/react_ts.md new file mode 100644 index 0000000..ac82c03 --- /dev/null +++ b/docs/react/react_ts.md @@ -0,0 +1,33 @@ +--- +sidebar_position: 1 +--- + +# 使用vite创建react ts工程 +React 应用程序是由组件组成的。一个组件是 UI(用户界面)的一部分,它拥有自己的逻辑和外观。组件可以小到一个按钮,也可以大到整个页面。 + +## 项目初始化 +### 1. 创建react+ts项目 +按下快捷键`Ctrl + ~`,打开终端,运行以下命令 +``` +npm create vite@latest +``` + +根据提示,输入项目名字并选择react,再选择TypeScript + +### 2. 打开项目 +运行以下命令,进入项目 +``` +cd react-ts-test1 +``` + +### 3. 安装依赖 +运行以下命令,安装依赖 +``` +npm install +``` + +### 4. 运行项目 +输入以下命令,运行项目 +``` +npm run dev +``` diff --git a/docs/react/result2.png b/docs/react/result2.png new file mode 100644 index 0000000000000000000000000000000000000000..ea64a2bd75620e6c33b191fa6c6e71a28b173dc4 GIT binary patch literal 65427 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