博客
关于我
create-react-app第一步
阅读量:356 次
发布时间:2019-03-04

本文共 1520 字,大约阅读时间需要 5 分钟。

React 开发指南

JSX 语法解析

在 React 开发中,JSX 是一个简化的语法,用于构建用户界面。JSX 被转换为标准的 React.createElement 调用。以下是一些关键点:

  • JSX 是 React 的扩展语法,用于定义用户界面。
  • JSX 元素会被 React.createElement 转换为对应的 React 组件。
  • JSX 的属性与 HTML DOM 属性有区别,特别是 style 属性需要使用 map 函数处理。

Babel 配置

Babel 是一个 JavaScript 转换工具,用于处理 JSX 和其他 React 特性。在 React 项目中,Babel 会将 JSX 转换为标准的 JavaScript 代码。虽然 React 组件看起来不直接使用 React,但 JSX 和 Babel 是 React 应用开发的基础。

React 元素创建

在 React 中,创建元素的方法是使用 React.createElement。例如:

import React from 'react';React.createElement('h1', null, 'Hello World');

虚拟 DOM 渲染

要将 React 组件渲染到真实 DOM 中,需要使用 ReactDOM:

import ReactDOM from 'react-dom';ReactDOM.render(
, document.getElementById('root'));

唯一键处理

在 React 中,当使用数组映射时,子节点必须有唯一的 key 属性。例如:

    {this.state.tags.map(tag => (
  • {tag}
  • ))}

this 指针问题

在 React 组件中,this 在不同情境下可能是 undefined。解决方法包括:

  • 使用箭头函数(继承上下文 this)。
  • 使用 constructor 并将 this 绑定到方法。
  • 事件处理

    在 React 中,处理 click 事件可以直接使用 onClick 属性:

    状态修改

    在 React 组件中,修改状态应使用 setState 方法,而不是直接修改 state:

    this.setState(prevState => ({  // 修改后的状态}));

    传递参数

    在需要传递参数的函数中,可以使用箭头函数:

    const handleParams = (params) => {  // 处理逻辑};

    只读属性

    React 组件的 props 必须是只读的,不能被修改。确保组件行为像纯函数一样对待 props。

    props.children 处理

    组件标签内的内容通常由 props.children 提供。为了修改内容,可以将其存储在 state 中。

    开发者插件

    在调试 React 组件时,可以使用 $r 表示 React 对象。例如:

    console.log($r.click()); // 模拟点击

    最佳实践

  • 组件的 state 最好由组件自身管理。
  • 使用 props 传递修改 state 的函数。
  • 单一来源真实性

    为了保持组件状态的一致性,建议使用 props 替代局部 state。

    WebStorm 快捷键

    在 WebStorm 中,可以使用 React 插件来提高开发效率。通过代码块右键,使用 refactor > Extract > Method 快速生成代码。

    以上是 React 开发中的一些关键点,希望对您有所帮助!

    转载地址:http://rgjr.baihongyu.com/

    你可能感兴趣的文章
    nvidia-smi 参数详解
    查看>>
    nvm安装以后,node -v npm 等命令提示不是内部或外部命令 node多版本控制管理 node多版本随意切换
    查看>>
    NYOJ 1066 CO-PRIME(数论)
    查看>>
    nyoj------203三国志
    查看>>
    nyoj58 最少步数
    查看>>
    OAuth2 + Gateway统一认证一步步实现(公司项目能直接使用),密码模式&授权码模式
    查看>>
    OAuth2 Provider 项目常见问题解决方案
    查看>>
    Vue.js 学习总结(14)—— Vue3 为什么推荐使用 ref 而不是 reactive
    查看>>
    oauth2-shiro 添加 redis 实现版本
    查看>>
    OAuth2.0_JWT令牌-生成令牌和校验令牌_Spring Security OAuth2.0认证授权---springcloud工作笔记148
    查看>>
    OAuth2.0_JWT令牌介绍_Spring Security OAuth2.0认证授权---springcloud工作笔记147
    查看>>
    OAuth2.0_介绍_Spring Security OAuth2.0认证授权---springcloud工作笔记137
    查看>>
    OAuth2.0_完善环境配置_把资源微服务客户端信息_授权码存入到数据库_Spring Security OAuth2.0认证授权---springcloud工作笔记149
    查看>>
    OAuth2.0_授权服务配置_Spring Security OAuth2.0认证授权---springcloud工作笔记140
    查看>>
    OAuth2.0_授权服务配置_令牌服务和令牌端点配置_Spring Security OAuth2.0认证授权---springcloud工作笔记143
    查看>>
    OAuth2.0_授权服务配置_客户端详情配置_Spring Security OAuth2.0认证授权---springcloud工作笔记142
    查看>>
    OAuth2.0_授权服务配置_密码模式及其他模式_Spring Security OAuth2.0认证授权---springcloud工作笔记145
    查看>>
    OAuth2.0_授权服务配置_资源服务测试_Spring Security OAuth2.0认证授权---springcloud工作笔记146
    查看>>
    OAuth2.0_环境介绍_授权服务和资源服务_Spring Security OAuth2.0认证授权---springcloud工作笔记138
    查看>>
    OAuth2.0_环境搭建_Spring Security OAuth2.0认证授权---springcloud工作笔记139
    查看>>