美文网首页
React 最基础的JSX语法

React 最基础的JSX语法

作者: 张思学 | 来源:发表于2019-11-07 18:03 被阅读0次

JSX 是Facebook为React开发的一套语法糖,创建JSX 语法的本质目的是为了使用基于 xml 的方式表达组件的嵌套 ,保持和 HTML 一致的结构 ,语法上除了在描述组件上比较特别以外, 其它和普通的Javascript没有区别 。并且最终所有的 JSX 都会编译为原生Javascript。

  1. 变量 JSX支持定义变量
// 1
import React, {Component} from 'react'
class Index extends Component {
  const element = <h1>Hello, world!</h1>;
  render(){
    element
  }
}

// 2
import React, {Component} from 'react'
class Index extends Component {
  const element = (
    //返回内容外层必须有一个包裹元素
    <div>
      <h1>React</h1>
      <p>Hello, world!</p>
    </div>
  );
  render(){
    element
  }
}
  1. 占位符 返回内容外层不想使用html元素,可以使用react提供给我们的占位符
import React, {Component, Fragment} from 'react'
class Index extends Component {
  const element = (
    <Fragment>
      <h1>React</h1>
      <p>Hello, world!</p>
    </Fragment>
  );
  render(){
    element
  }
}
  1. 样式 支持 CSS 样式,但是有自己独特的语法 “驼峰式 + JSON” 风格
import React, {Component} from 'react'
class Index extends Component {
  const css = {
    color: 'red'
  }
  const element = <h1 style={css}>Hello, world!</h1>;
  render(){
    element
  }
}
  1. 支持 class,要使用className
import React, {Component} from 'react'
import style from './style.css' //导入样式文件
class Index extends Component {
  render(){
    <div className="div-class">加入class</div>
  }
}
  1. 三元表达式 可以通过条件判断决定使用哪个组件
import React, {Component} from 'react'
class Index extends Component {
  render(){
   <div>{true ? 1 : 0}</div>
  }
}
  1. 迭代 遍历
import React, {Component} from 'react'
class Index extends Component {
  render() {
    return (
      <div>
        {[1,2,3].map((i, index) => {
            return (<p key={index}>{i}</p>) // 遍历出三个 p 元素
        })}
      </div>
    )
  }
}
  1. 注释
import React, {Component} from 'react'
class Index extends Component {
  render() {
    return (
      <div>
        {/* 这是 JSX 独特的注释语法 */}
      </div>
    )
  }
}
  1. 解析html标签 dangerouslySetInnerHTML
import React, {Component} from 'react'
class Index extends Component {
  render() {
    return (
      <div dangerouslySetInnerHTML={{__html: '<h1>我是H1标签</h1>'}}></div>
    )
  }
}
  1. label 标签的for在JSX语法中的使用
import React, {Component} from 'react'
class Index extends Component {
  render() {
    return (
      <div>
        <label htmlFor="inputArea">点击输入内容</label>
        <input id="inputArea"/>
      </div>
    )
  }
}
  1. 使用 注意
import React from 'react';
import ReactDOM from 'react-dom';
import Index from './index'; //Jsx语法中,引入使用组件必须已大写开头
ReactDOM.render(
  /* Jsx语法中,如果我们使用自己创建的组件,通过标签形式 + 组件名使用
   * 标签: <  />
   * 组件名:Index  
   */
  <Index/>,
  document.getElementById('root')
)

相关文章

  • React 最基础的JSX语法

    JSX 是Facebook为React开发的一套语法糖,创建JSX 语法的本质目的是为了使用基于 xml 的方式表...

  • react语法结构

    1.react JSX语法原理 react是函数式编程,使用jsx语法来渲染组件。jsx语法是合法的JavaScr...

  • React

    (1)React环境搭建的过程 安装地址示例 (2)React 基础 (2.1) es6语法 (2.2) JSX ...

  • react学习(2019/7/30-8/7)

    今日总结 课上提到的内容 1. 讲了react要学习的内容提纲 react 基础,JSX语法,插件 react-r...

  • React基础——JSX语法

    JSX是React的核心组成部分,它使用XML标记的方式去直接声明界面,界面组件之间可以互相嵌套。可以理解为在JS...

  • React JSX语法基础

    一、注释 写在JSX的HTML标签里的注释格式应包裹在{}里,即为: 二、类名属性 以下都会用到的CSS文件:/s...

  • ReactJS基础学习-01

    React JSX语法 React 使用 JSX 来替代常规的 JavaScript。 JSX 是一个看起来很像 ...

  • vue 渲染函数&jsx

    jsx react模板渲染语法

  • React 笔记

    JSX React 采用jsx语法,需用bable.js转义. JSX 语法可以和html 混写. html以< ...

  • react项目简单回顾,thunk与saga中间件

    重新回顾了一下react相关的知识 react简单总结 比如基础语法,JSX,组件化,用styled-compon...

网友评论

      本文标题:React 最基础的JSX语法

      本文链接:https://www.haomeiwen.com/subject/touvbctx.html