react-JSX语法

JSX 语法

JSX - JS 语法扩展,可以在 JS 中写模板(类似 HTML 语法)

JSX 已经成为 ES 语法标准,也可用于其他框架,如 Vue3

  • 标签
  • 属性
  • 事件
  • JS 表达式
  • 判断
  • 循环

标签

  • 首字母小写 - HTML tag
  • 首字母大写 - 自定义组件
  • <input/><Input/> 就不一样

可以像 HTML 一样嵌套

JSX 里的标签必须是闭合的,<input> <br> 这样写在 JSX 会报错(在 HTML 中不会报错),必须闭合 <input/>

每一段 JSX 只能有一个根节点,或者使用 <></> ( Fragment )

属性

和 HTML 属性基本一样,但有些和 JS 关键字冲突了

  • class 要改为 className
  • style 要写成 JS 对象(不能是 string),key 采用驼峰写法
  • for 要改为 htmlFor

事件

onXxx 的形式

注意 TS 的写法

function clickHandler(event: React.MouseEvent<HTMLParagraphElement>) {
    event.preventDefault()
    console.log('clicked')
}

return <p onClick={clickHandler}>hello world</p>

如果要想传递参数,可以通过如下方式

  function clickHandler(event: React.MouseEvent<HTMLParagraphElement>, x: string) {
    event.preventDefault()
    console.log('clicked', x)
  }

  return (
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员柚子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值