• 前端react入门day01-了解react和JSX基础


     (创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)

    目录

    React介绍 

    React是什么

    React的优势 

    React的市场情况 

    开发环境搭建 

    使用create-react-app快速搭建开发环境

    尝试运行程序 

    react基本框架 

    index.js

    App.js

    JSX基础-概念和本质

    什么是JSX

    JSX的本质

    JSX基础-高频场景

    JSX中使用JS表达式

    JSX中实现列表渲染 

    JSX中实现条件渲染


    React介绍 

    React是什么

    React由Meta公司研发,是一个用于 构建Web和原生交互界面的库

    React的优势 

    相较于传统基于DOM开发的优势

          

    相较于其它前端框架的优势

              

    React的市场情况 

    全球最流行,大厂必备

    开发环境搭建 

    使用create-react-app快速搭建开发环境

    create-react-app是一个快速 创建React开发环境的工具,底层由Webpack构建,封装了配置细节,开箱即用

    执行命令:

    npx create-react-app react-basic

    1. npx Node.js工具命令,查找并执行后续的包命令

    2. create-react-app 核心包(固定写法),用于创建React项目

    3. react-basic React项目的名称(可以自定义)

    尝试运行程序 

    运行界面如下:

    react基本框架 

    index.js

    1. //项目的入口 从这里开始运行
    2. //react必要的两个核心包
    3. import React from 'react';
    4. import ReactDOM from 'react-dom/client';
    5. //导入项目的根组件
    6. import App from './App';
    7. import reportWebVitals from './reportWebVitals';
    8. //将App根组件渲染到id为root的dom节点上
    9. const root = ReactDOM.createRoot(document.getElementById('root'));
    10. root.render(
    11. <React.StrictMode>
    12. <App />
    13. React.StrictMode>
    14. );

    App.js

    1. //项目根组件
    2. function App() {
    3. return (
    4. <div className="app">
    5. this is app
    6. div>
    7. );
    8. }
    9. export default App;

    JSX基础-概念和本质

    什么是JSX

    概念:JSX是JavaScript和XML(HTML)的缩写,表示在JS代码中编写HTML模版结构,它是React中编写UI模版的方式

    优势:

    1. HTML的声明式模版写法 2. JS的可编程能力 

    JSX的本质

    JSX并不是标准的JS语法,它是JS的语法扩展,浏览器本身不能识别,需要通过解析工具做解析之后才能在浏览器中运行

    JSX基础-高频场景

    JSX中使用JS表达式

    在JSX中可以通过 大括号语法{} 识别 JavaScript中的表达式,比如常见的变量、函数调用、方法调用等等

    1. 使用引号传递字符串

    2. 使用JavaScript变量

    3. 函数调用和方法调用

    4. 使用JavaScript对象

    注意:if语句、switch语句、变量声明属于语句,不是表达式,不能出现在{}中

    1. // 项目的根组件
    2. // App -> index.js -> public/index.html(root)
    3. const count = 100
    4. function getName () {
    5. return 'jack'
    6. }
    7. function App () {
    8. return (
    9. <div className="App">
    10. this is App
    11. {/* 使用引号传递字符串 */}
    12. {'this is message'}
    13. {/* 识别js变量 */}
    14. {count}
    15. {/* 函数调用 */}
    16. {getName()}
    17. {/* 方法调用 */}
    18. {new Date().getDate()}
    19. {/* 使用js对象 */}
    20. <div style={{ color: 'red' }}>this is divdiv>
    21. div>
    22. )
    23. }
    24. export default App

    网页显示为:

    JSX中实现列表渲染 

    语法:在JSX中可以使用原生JS中的map方法遍历渲染列表

    1. const list = [
    2. { id: 1001, name: 'Vue' },
    3. { id: 1002, name: 'React' },
    4. { id: 1003, name: 'Angular' }
    5. ]
    6. function App () {
    7. return (
    8. <div className="App">
    9. this is App
    10. {/* 渲染列表 */}
    11. {/* map 循环哪个结构 return结构 */}
    12. {/* 注意事项:加上一个独一无二的key 字符串或者number id */}
    13. {/* key的作用:React框架内部使用 提升更新性能的 */}
    14. <ul>
    15. {list.map(item => <li key={item.id}>{item.name}li>)}
    16. ul>
    17. div>
    18. )
    19. }
    20. export default App

    网页显示为:             

    JSX中实现条件渲染

    语法:在React中,可以通过逻辑与运算符&&、三元表达式(?:)实现基础的条件渲染

    1. const isLogin = true
    2. function App () {
    3. return (
    4. <div className="App">
    5. {/* 逻辑与 && */}
    6. {isLogin && <span>this is spanspan>}
    7. {/* 三元运算 */}
    8. {isLogin ? <span>jackspan> : <span>loading...span>}
    9. div>
    10. )
    11. }
    12. export default App

    网页显示为:       

  • 相关阅读:
    vite项目中vue-i18n国际化与Element-Plus自动导入结合实现
    企业该如何选择自己合适的云财务软件?
    natfrp和FRP配置SSL的基本步骤和bug排查
    【软考】系统架构设计师-历年论文题目(2013-2022)
    视觉系统设计实例(halcon-winform)-10.PLC通讯
    proxy配置
    TRex学习之旅十一
    K8s in Action 阅读笔记——【13】Securing cluster nodes and the network
    c++学习 文件操作,模板
    LuatOS-SOC接口文档(air780E)--dac - 数模转换
  • 原文地址:https://blog.csdn.net/weixin_73295475/article/details/133987840