博客
关于我
01-1【React】React起手式(引入、函数延迟执行、React元素)
阅读量:689 次
发布时间:2019-03-17

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

如何引入React

React 是一个流行的 JavaScript 框架,用于构建用户界面。引入 React 的方法主要有两种:通过 CDN 或者通过 webpack/rollup 配置项目。

CDN 引入

使用 CDN 引入 React 和 React DOM,可以通过以下步骤:

  • 需要引入两个库,注意顺序:

    • react
    • react-dom
  • 引入这两个库之后,就可以使用自己的 JS 文件。

  • 项目默认可以使用 parcel 运行

    create-react-app 是一个好用的工具,可以快速初始化一个 React 项目。安装方式如下:

    yarn global add create-react-app

    在 Windows 上可能会有兼容性问题,建议使用 npx

    npx create-react-app my-app

    使用 React 创建一个简单的应用

    以下是通过 CDN 引入 React 创建一个简单应用的示例:

    // 检查 React 是否正确加载console.log(window.React);// 创建 React 元素console.log(window.React.createElement);// 检查 ReactDOM 是否正确加载console.log(window.ReactDOM);// 渲染 React 元素console.log(window.ReactDOM.render);

    React 模块规范

    React 项目中,模块规范的选择非常重要。umd 模块规范是现代推荐的选择,因为它兼容 Node.js 和浏览器环境。以下是如何使用 umd 模块规范:

  • 在项目中使用 importexport 关键字:
  • // 例如,一个简单的模块export const App = () => {  return 
    Hello World
    ;};
    1. webpackrollup 配置中正确配置模块路径。
    2. 如何正确引入 React

      对于开发者来说,使用 create-react-app 是最简单的方法。以下是详细的步骤:

    3. 全局安装 create-react-app
    4. yarn global add create-react-app
      1. 初始化项目:
      2. create-react-app my-appcd my-appyyarn start

        React 的延迟执行

        React 的核心思想之一是延迟执行。以下是通过函数和延迟执行的示例:

        // 非函数形式let b = 1 + a;// 函数形式let f = () => 1 + a;let b = f();

        函数形式会在调用时才执行表达式,而不是立即执行,这使得代码更灵活。

        React 元素与函数组件

        React 元素和函数组件的主要区别在于执行时机。以下是对比:

        • 元素:
        const App1 = React.createElement('div', null, n);
        • 函数组件:
        const App2 = () => React.createElement('div', null, n);

        函数组件会在被调用时才执行代码,这使得代码更加灵活。

        React 的小结

      3. React 元素是 createElement 返回的对象,称为虚拟 DOM。
      4. 函数组件是通过函数返回元素,支持多次渲染。
      5. React 会比较虚拟 DOM,找出差异并进行局部更新。
      6. DOM Diff 算法是 React 的核心优化技术。
      7. 通过以上内容,可以更好地理解 React 的基础知识和使用方法。

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

    你可能感兴趣的文章
    Openlayers高级交互(5/20):右键点击,获取该点下多个图层的feature信息
    查看>>
    Openlayers高级交互(6/20):绘制某点,判断它是否在一个电子围栏内
    查看>>
    Openlayers高级交互(7/20):点击某点弹出窗口,自动播放视频
    查看>>
    Openlayers高级交互(8/20):选取feature,平移feature
    查看>>
    Openlayers高级交互(9/20):编辑图形(放缩、平移、变形、旋转),停止编辑
    查看>>
    Openlayers:DMS-DD坐标形式互相转换
    查看>>
    openlayers:圆孔相机根据卫星经度、纬度、高度、半径比例推算绘制地面的拍摄的区域
    查看>>
    OpenLDAP(2.4.3x)服务器搭建及配置说明
    查看>>
    OpenLDAP编译安装及配置
    查看>>
    Openmax IL (二)Android多媒体编解码Component
    查看>>
    OpenMCU(一):STM32F407 FreeRTOS移植
    查看>>
    OpenMCU(三):STM32F103 FreeRTOS移植
    查看>>
    OpenMCU(三):STM32F103 FreeRTOS移植
    查看>>
    OpenMCU(二):GD32E23xx FreeRTOS移植
    查看>>
    OpenMCU(五):STM32F103时钟树初始化分析
    查看>>
    OpenMCU(四):STM32F103启动汇编代码分析
    查看>>
    OpenMetadata 命令执行漏洞复现(CVE-2024-28255)
    查看>>
    OpenMMLab | AI玩家已上线!和InternLM解锁“谁是卧底”新玩法
    查看>>
    OpenMMLab | S4模型详解:应对长序列建模的有效方法
    查看>>
    OpenMMLab | 【全网首发】Llama 3 微调项目实践与教程(XTuner 版)
    查看>>