React 入门 02 - JSX

Posted 逆風的薔薇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了React 入门 02 - JSX相关的知识,希望对你有一定的参考价值。

前言

React 入门 01 - Hello World中,简单了解了下React基本概念以及如何运用到html中。现在我们学习一下在React中配合使用最多的JSX相关知识。

JSX

JSX,是一个 javascript 的语法扩展。比如如下行语句,它既不是单纯Html语句也不是普通Java Script。JSX 可以很好地描述 UI 应该呈现出它应有交互的本质形式,在React中配合使用非常流行。

const element = <h1>Hello, world!</h1>;

JSX 嵌入变量、函数表达式

 我们可以声明基本变量、数组,然后在JSX中使用它。

var users = ['Ria', 'Ming'];
var arr = ['Let\\'s start to learn React!']
ReactDOM.render(
    <div> 
        
            users.map(function(user) 
                return <div><h1>Hello, user! </h1></div>
            )

        
        <div><h2>arr</h2></div>
    </div>,
    document.getElementById('root')
);

variable.html Git Hub 🔗

👆上面例子是在JSX中应用变量,同理可以声明函数表达式并完成调用。

function formatName(user) 
    return user.firstName + ' ' + user.lastName;


const user = 
    firstName: 'Ria',
    lastName: 'Yang'
;

const element = (
    <h1>
        Hello, formatName(user)!
    </h1>
);

ReactDOM.render(
    element,
    document.getElementById('root')
);

function.html Git Hub 🔗

JSX 作为表达式赋值

JSX 也是一个表达式。在编译之后,JSX 表达式会被转为普通 JavaScript 函数调用,并且对其取值后得到 JavaScript 对象。也就是说,你可以在 if 语句和 for 循环的代码块中使用 JSX,将 JSX 赋值给变量,把 JSX 当作参数传入,以及从函数中返回 JSX。

function greeting(user) 
    if (user) 
        return <h1> Hello, formatName(user)! </h1>;
    

    return <h1> Hello, Stranger! </h1>;

expressions.html Git Hub 🔗

 

 

以上是关于React 入门 02 - JSX的主要内容,如果未能解决你的问题,请参考以下文章

React 入门 02 - JSX

React 入门 03 - 元素与组件

React 入门 03 - 元素与组件

React入门-JSX和虚拟dom

React入门---JSX内置表达式-6

text React和JSX入门