当前位置:   article > 正文

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

前端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 div</div>
  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 span</span>}
  7. {/* 三元运算 */}
  8. {isLogin ? <span>jack</span> : <span>loading...</span>}
  9. </div>
  10. )
  11. }
  12. export default App

网页显示为:       

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/401529
推荐阅读
相关标签
  

闽ICP备14008679号