JSX基本使用
JSX: JavaScript XML的简写。就是一种在 JavaScript 中编写 XML(HTML) 格式的代码。
优势: 声明式语法更加直观,和HTML 结构相同,减低学习成本。提高开发效率。
基本使用:
//前提:使用react 脚手架进行项目初始化(npx create-react-app my-app)
// 1.导入react
import React from 'react'
import ReactDOM from 'react-dom//使用JSX 进行 react 元素的创建
const title = (
Hello World!!
)//渲染 react 元素
ReactDOM.render(title, document.getElementById('root'))
【学习|JSX基本使用】JSX注意点:
- React元素的属性名使用驼峰命名法
- 特殊的属性名:(HTML --> XML)
- class --> className 、 for -->htmlFor 、 tabindex --> tabIndex
- 没有子节点的 react 元素可以使用单标签进行表示 < />
- 推荐使用 小括号 包含 JSX,从而避免 JS 中的自动插入分号陷阱
语法:{ javascript表达式 } ----- (类似于插值语法)
const name = '小宝'
const title = (
我是:{ name }
)
JSX 中使用 javascript 的注意点
- 单括号中可以使用任意的 javascript 表达式---也可以直接写一些简单(字符串、三元运算符等等)
- JSX 自身也是 JS 表达式
- JS 中对象一般只有作为 style 属性出现的时候才是合法的,不然直接在 JSX 中使用对象写法会报错
- 不能在 {} 中出现语句(例如:if/for等)
场景:进行一些过渡加载效果时进行判断
使用:主要通过 if/else 、三元运算符、逻辑与来实现
基本使用:
const isLoading = true;
const loading = () => {
return isLoading ? (加载中...) : (加载完成)
}
const title = (条件渲染:
{ loading() })
JSX列表渲染
方法:使用数组的 map() 方法进行列表渲染
注意:列表渲染时,需要添加 key() 属性,key值要唯一,且尽量避免使用索引号为 key
基本使用:
// 列表渲染
const song = [
{id : 1, name : '幻听'},
{id : 2, name : '山水之间'},
{id : 3, name : '宇宙之大'},
]const title = (
{ song.map(item => - {item.name}
) }
)
JSX样式处理
- 行内样式---style
// 行内样式
const title = (样式处理)
- 类名----className
// 类名
// 引入css文件
import './index.css'
// 使用css文件中的元素样式
const title = (样式处理)
推荐阅读
- react|封装一个处理 react 异常的最简 ErrorBoundary 组件
- React|React 错误边界之 react-error-boundary
- FDTD学习笔记|Lumerical官方案例、FDTD时域有限差分法仿真学习(三)——环形谐振器(Ring resonator)之第一部分
- FDTD学习笔记|Lumerical官方案例、FDTD时域有限差分法仿真学习(二)——宽带光栅耦合器(Broadband grating coupler (2D))
- vue|浅析Vue三种开发模式(MVC、MVP、MVVM)
- php|HTML及CSS学习笔记
- CSS学习|CSS全面学习
- 前端|CSS【层叠样式表Cascading Style Sheets】
- 前端|对请求,响应和前后端生命周期的理解。