惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
Microsoft Azure Blog
Microsoft Azure Blog
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
博客园_首页
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
小众软件
小众软件
F
Fortinet All Blogs
Microsoft Security Blog
Microsoft Security Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
H
Hackread – Cybersecurity News, Data Breaches, AI and More
量子位
Google DeepMind News
Google DeepMind News
Jina AI
Jina AI
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
aimingoo的专栏
aimingoo的专栏
B
Blog RSS Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
宝玉的分享
宝玉的分享
有赞技术团队
有赞技术团队
J
Java Code Geeks
WordPress大学
WordPress大学
The Cloudflare Blog

Li Hui Blog

工作流调研与实践经验 如何搭建私有仓库 Nexus 并配置 SSL 证书 从零开始搭建单节点 ELK 浅谈一个产品的用户引导 归档 GoCD 加入基础密码验证 搭建一套 gocd 的环境 如何使用 gitbook cli工具 React JSX语法再实践 如何搭建第一个 React 程序 [SpringBoot 指南] 连接 mysql 数据库并进行增删改查测试 [SpringBoot 指南] 如何开始 Springboot 之旅 实现自己第一个接口 LeetCode刷题笔记 VPC笔记 读书的目的 [人文书籍] 把时间当作朋友 Docker基础命令 [技术书籍]JSON必知必会 Docker原理研究 使用Ubuntu 及宝塔搭建Ghost平台 [Linux]Ubuntu安装宝塔面板 2020年年终总结 CURL学习教程 2020年度计划记录 [安全系列]生成ssh证书 [CLI应用学习]时间使用GitHub CLI [linux系列] 修改主机用户名 轻松学CLI应用总章节 [Shell编程系列]基础教程2 [Shell编程系列]基础教程1
React 组件示例
2022-01-06 · via Li Hui Blog

上一节,我们使用 create-react-app 生成示例程序的代码,这一节我们详细介绍下如何进行修改代码

看了一些 React 的书籍,其实 React 使用 JSX 语法,将程序的模块化和抽象做的很好。

我们新建立的程序的目录如下

 1moz-todo-react
 2├── README.md
 3├── node_modules
 4├── package.json
 5├── package-lock.json
 6├── .gitignore
 7├── public
 8│   ├── favicon.ico
 9│   ├── index.html
10│   ├── logo192.png
11│   ├── logo512.png
12│   ├── manifest.json
13│   └── robots.txt
14└── src
15    ├── App.css
16    ├── App.js
17    ├── App.test.js
18    ├── index.css
19    ├── index.js
20    ├── logo.svg
21    ├── reportWebVitals.js
22    └── setupTests.js

关于目录结构的表述我这里直接引用 Mozilla 的描述

目录 src 是我们花费时间最多的地方,因为它是我们 React 应用源码存放的目录。

目录 public 包含了开发应用时浏览器会读取的文件,其中最重要的就是 index.html。React 将目录 src 中的代码嵌入这个文件,从而浏览器才能运行此文件。 index.html 中的有些内容关乎 create-react-app 的运作,因此除非你知道自己在做什么样的修改,否则不建议编辑这个文件。当然,你可以修改 index.html 中的 元素的内容来表现此应用程序通俗易懂的名称。

package.json 与 react 工程并无直接关联,这个是 node modules 的管理的文件。其他的 node 版本管理的软件都会有这个文件。

React 中最小的就是组件,那何为组件呢,组件的大小如何界定呢?

何为组件

组件是组成应用程序的最小单元,使用组件可以大大减轻软件开发的工作,提高软件开发的效率,一般组件是实现单一功能的

下面以《深入 React 技术栈》中的例子为例讲述组件元素的构建

下面是一个带有 btn btn-blue 的按钮,且其中有 em 元素,且其中有字符串 Confirm

1<button class="btn btn-blue">
2 <em>Confirm</em>
3</button>

若转移为 Json 对象如下

 1{
 2    type: 'button',
 3    props: {
 4        className: 'btn btn-blue',
 5        children: [{
 6            type: 'em',
 7            props: {
 8                children: 'Confirm'
 9            }
10        }]
11    }
12}

转移为组件元素封装

 1const Button = ({color,text}) =>{
 2    return {
 3        type: 'button',
 4        props: {
 5            className: `btn btn - $ {
 6                color
 7            }`,
 8            children: {
 9                type: 'em',
10                props: {
11                    children: text,
12                },
13            },
14        },
15    };
16}

由此我们就有了第一个组件 Button

参考

  1. https://developer.mozilla.org/zh-CN/docs/Learn/Tools_and_testing/Client-side_JavaScript_frameworks/React_getting_started
  2. 《深入 React 技术栈》