当前位置: 首页 > article >正文

react组件入门

react应用程序就是由一个个组件搭建而成。组件有类组件和函数组件两种。

我们之前使用create-react-app创建了app,src下放的就是我们应用的源代码,我们基于这些已生成的文件,来学习和验证组件。

类组件

这里我们创建PostList.js更改这个app。

// src/PostList.js
// 必须import和extends react的component
import React from "react";
// 组件标签的名字首字母必须大写,这里必须采用驼峰书写方式
class PostList extends React.Component {
  // 类组件内部必须有一个render,render方法返回代表该数组件UI的
  // React元素
  render() {
    return {
      <div>
        post list
        <ul>
          <li> post 1 </li>
          <li> post 2 </li>
          <li> post 3 </li>
        </ul>
      </div>  
    };
  }
}
// 将PostList作为默认模块导出,从而可以再其他js文件中导入PostList使用
export default PostList;

这个代码段定义了一个博客列表。 index.js是默认程序的入口。我们实现以下变更:

diff --git a/src/index.js b/src/index.js
index d563c0f..8dd4562 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,13 +1,14 @@
 import React from 'react';
 import ReactDOM from 'react-dom/client';
 import './index.css';
-import App from './App';
+//import App from './App';
+import PostList from './PostList'
 import reportWebVitals from './reportWebVitals';
 
 const root = ReactDOM.createRoot(document.getElementById('root'));
 root.render(
   <React.StrictMode>
-    <App />
+    <PostList />
   </React.StrictMode>
 );

我们刷新localhost:3000,就可以看到更新了。

函数组件

function ComponentName就是函数组件。我们在类组件基础上添加函数组件。

diff --git a/src/index.js b/src/index.js
index d563c0f..ac9a9d4 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,13 +1,27 @@
 import React from 'react';
 import ReactDOM from 'react-dom/client';
 import './index.css';
-import App from './App';
+//import App from './App';
+import PostList from './PostList'
 import reportWebVitals from './reportWebVitals';
 
+function PostList1() {
+  return (
+      <div>
+        post list 1
+        <ul>
+          <li> post 4 </li>
+          <li> post 5 </li>
+          <li> post 6 </li>
+        </ul>
+      </div>
+    );
+}
 const root = ReactDOM.createRoot(document.getElementById('root'));
 root.render(
   <React.StrictMode>
-    <App />
+    <PostList />
+    <PostList1 />
   </React.StrictMode>
 );

刷新app,我们看到,此时的界面为:

我们这里举的例子是最简单的类组件和函数组件,后面我们陆续介绍二者丰富的用法。


http://www.kler.cn/a/322876.html

相关文章:

  • 【Java多线程】单例模式(饿汉模式和懒汉模式)
  • 了解 Solon MVC 的参数注入规则
  • 阮一峰科技爱好者周刊(第 325 期)推荐工具:一个基于 Next.js 的博客和 CMS 系统
  • 如何使用Django写个接口,然后postman中调用
  • thinkphp6配置多应用项目及多域名访问路由app配置
  • 【Framework系列】UnityEditor调用外部程序详解
  • java中的四种引用
  • 【高分系列卫星简介——高分辨率多模综合成像卫星】
  • 无人机飞手入伍当兵技术优势分析
  • Android中使用RecyclerView制作横向轮播列表及索引点
  • 前端基础知识汇总(一)
  • 李宏毅机器学习2022-HW9--Explainable AI
  • 鸿蒙面试题库收集(一):ArkTSArkUI-基础理论
  • MySQL知识点复习 - 常用的日志类型
  • 浅谈Java之多线程锁处理
  • kali linux crunch工具使用 -- 生成字典
  • 【常见框架漏洞】ThinkPHP、struts2、Spring、Shiro
  • 【数据结构】堆(Heap)详解
  • 前端框架的选择与考量:一场技术的盛宴
  • [Doc][ROS2]订阅发布、服务客户端区别
  • django drf 自动注册路由
  • Leetcode尊享面试100题-252.会议室
  • 产品推介——SOP4 随机相位可控硅光耦KLM305X
  • Docker Init 实战详解:从入门到精通
  • 前端练习总结(1)
  • 选择、冒泡、插入排序