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

React学习笔记03-----手动创建和运行

一、项目创建与运行【手动】

react-scripts集成了webpack、bable、提供测试服务器

1.目录结构

public是静态目录,提供可以供外部直接访问的文件,存放不需要webpack打包的文件,比如静态图片、CSS、JS

src存放源码

(1)index.html

是首页的模板

(2)index.js

是js的入口文件,webpack打包时会以此文件为入口,JS编译后,再关联到index.html中

主要写引入文件以及渲染,核心代码写在后续的App.js中

(3)初始化

也可以用npm,生成package.json文件

(4)安装项目依赖

package.json文件中添加了对应的依赖

2.运行

在index.js中写完内容之后

需要执行npx react-scripts build,会自动调用webpack,对项目打包,生成build文件夹,打开build文件夹下的index.html,即可看到页面。

当修改内容时,需要重新打包,效率低,所以【适合整个项目开发完成后】

执行npx react-scripts start,会自动调用webpack,启动内置的测试服务器,会实时的编译代码,修改后页面会跟着刷新。ctrl+c结束服务器

可以在package.json中写以下命令,这样就可以简化执行命令: npx start和npx run build

3.添加样式

创建一个css文件,文件名最好和关联的js结构的文件名一致,需要在js文件中引入

但是传统写法虽然可以复用样式,但操作仍很复杂

二、组件

1.基于函数的组件(简单常用)

新建一个App.js 存放组件并导出

在webstorm中写rsc,再按Tab键,可自动写出框架

可以在另一个JS中调用此组件,格式<组件名/>

在index.js中导入,便可渲染组件<APP/>

2.基于类的组件

必须要继承React.Component

3.组件的创建

在src文件夹下新建一个Components文件夹,存放所有组件的js文件,每个组件要对应一个css文件

组件名

三、事件

传统定义事件:通过原生DOM的方法进行操作,在React中不行

(1)利用回调函数绑定事件

(2)利用组件绑定事件

注意在调用的时候,clickHandler不能加()

(3)事件的向上传播(冒泡)

四、props

实现组件也能传递参数,从而保证组件的复用/动态设置,避免数据的写死

在组件之间,父组件可以通过props(属性)向子组件传递数据

1.在父组件中传入数据

可以传字符串、对象、函数.....

也可以指定日期

2.在子组件中接收实参

http://www.lryc.cn/news/401109.html

相关文章:

  • ubantu22.04安装OceanBase 数据库
  • 【linux】【深度学习】fairseq框架安装踩坑
  • 【Python爬虫教程】第7篇-requests模块的cookies保存和使用
  • 微信小程序开发基础知识6----使用npm包
  • 如何在element中table的 v-for中 使用slot-scope?
  • 企业网络实验dhcp-snooping、ip source check,防非法dhcp服务器、自动获取ip(虚拟机充当DHCP服务器)、禁手动修改IP
  • 20. Python读取.mat格式文件通用函数
  • Cypress UI自动化之安装环境
  • SpringApplication.java类
  • 智能招聘系统的AI功能解析
  • AV1技术学习:Translational Motion Compensation
  • mysql中的存储过程
  • 07:串口通信二
  • 识别视频中的人数并统计出来
  • 【TypeDB 】机器学习和符号 AI 在机器人技术中的作用
  • EPLAN 去掉PDF中的红色跳转标识
  • 【car】深入浅出学习机械燃油车知识、结构、原理、维修、保养、改装、编程
  • 语音识别概述
  • 勒索防御第一关 亚信安全AE防毒墙全面升级 勒索检出率提升150%
  • elementui 日历组件el-calendar使用总结
  • RK3568 安卓12 EC20模块NOCONN没有ip的问题(已解决)
  • 【NLP自然语言处理】基于BERT实现文本情感分类
  • CSS选择器(1)
  • Claude 3.5 Sonnet模型发布,对比ChatGPT4o孰强孰弱
  • MySQL 分库分表
  • AutoMQ 社区双周精选第十二期(2024.06.29~2024.07.12)
  • Web开发:<div>标签作用
  • 如何使用unittest框架来编写和运行单元测试
  • 2024最新超详细SpringMvc常用注解总结
  • Linux硬件中断(IRQ)的基础知识