jsx语法

这篇具有很好参考价值的文章主要介绍了jsx语法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

JSX语法

 JSX是一种JavaScript的语法扩展(eXtension),也在很多地方称之为JavaScript XML,因为看起就是一段XML语法;

 它用于描述我们的UI界面,并且其完成可以和JavaScript融合在一起使用;

 它不同于Vue中的模块语法,你不需要专门学习模块语法中的一些指令(比如v-for、v-if、v-else、v-bind);

const element=<h2>{message}</h2>

👀 JSX的书写规范:

 JSX的顶层只能有一个根元素,所以我们很多时候会在外层包裹一个div元素(或者使用后面我们学习的Fragment);

 为了方便阅读,我们通常在jsx的外层包裹一个小括号(),这样可以方便阅读,并且jsx可以进行换行书写;

 JSX中的标签可以是单标签,也可以是双标签;

✓ 注意:如果是单标签,必须以/>结尾;

jsx里面的注释

{/*  */}

JSX嵌入变量作为子元素

 情况一:当变量是Number、String、Array类型时,可以直接显示

 情况二:当变量是null、undefined、Boolean类型时,内容为空;

✓ 如果希望可以显示null、undefined、Boolean,那么需要转成字符串;

✓ 转换的方式有很多,比如toString方法、和空字符串拼接,String(变量)等方式;

 情况三:Object对象类型不能作为子元素(not valid as a React child)

JSX嵌入表达式

 运算表达式

 三元运算符

 执行一个函数

<h2>{10+20}</h2>
<h2>{age>=18? "成年人":"未成年人"}</h2>
const liels=movies.map(movie=><li>{movie}</li>)
getmoviels(){
        const liels=this.state.movies.map(movie=><li>{movie}</li>)
        return liels
      }
      <h2>{this.getmoviels()}</h2>

事件绑定

//this绑定的三种方法
1、this.btnclick=this.btnclick.bind(this)
2、btn3click=()=>{
        console.log(this)
      }
3、先定义函数
btn3click(){
        console.log(this)
      }
   <button onClick={()=>this.btn3click()}>1</button>//使用隐式绑定

多个参数传递

btnclick(event,name,age){
      console.log("btnclick",event,this)
      console.log(name,age)
      }
//第一种
<button onClick={this.btnclick.bind(this,"boke",20)}>2</button>
//第二种
<button onClick={(event)=>this.btnclick(event,"grb",21)}>3</button>

条件渲染

在vue中,我们会通过指令来控制:比如v-if、v-show;

 在React中,所有的条件判断都和普通的JavaScript代码一致;

常见的条件渲染的方式有哪些呢?

方式一:条件判断语句

 适合逻辑较多的情况

方式二:三元运算符

 适合逻辑比较简单

方式三:与运算符&&

 适合如果条件成立,渲染某一个组件;如果条件不成立,什么内容也不渲染;

v-show的效果

 主要是控制display属性是否为none

const {isready}=this.state
        let showelent=null
        if(isready){
         showelent= <h2>开始</h2>
        }else{
         showelent= <h1>结束</h1>
        }
        return(
          <div>
            {showelent}
          </div>
        )

 文章来源地址https://www.toymoban.com/news/detail-607212.html

到了这里,关于jsx语法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • React jsx 语法解析 & 转换原理

    jsx是一种JavaScript的语法扩展(eXtension),也在很多地方称之为JavaScript XML,因为看起就是一段XML语法,用于描述UI界面,并且可以和JavaScript代码结合使用。 比起vue中的模板语法,更加灵活,且不需要学习模板语法中的特定标签,比如: v-if 、 v-for 、 v-bind 等,而是直接使用

    2024年02月03日
    浏览(43)
  • 【前端知识】React 基础巩固(七)——JSX 的基本语法

    JSX 是一种 JS 的语法扩展(extension),也可以称之为 JavaScript XML,因为看起来就是一段 XML 语法 它用于描述我们的 UI 界面,并且其可以和 JS 融合在一起使用 它不同于 Vue 中的模块语法,不需要专门学习模块语法中的指令 React 认为 渲染逻辑 本质上与 其他UI逻辑 存在内在耦合

    2024年02月10日
    浏览(59)
  • React入门 - 07(说一说 JSX 中的语法细节)

    本章内容 上一节内容我们完成了一个简单的 TodoList 案例。到现在为止我们已经知道怎么在 JSX 中使用 “js 表达式”和”列表渲染“了,本节我们继续使用之前的工程项目来编写代码,补充在 React 使用 JSX 语法的一些细节。 JSX 中使用表达式: { JS 表达式 } 可使用的 js 表达式

    2024年01月17日
    浏览(37)
  • 初识React: 基础(概念 特点 高效原因 虚拟DOM JSX语法 组件)

    React是一个由Facebook开源的JavaScript库,它主要用于构建用户界面。React的特点是使用组件化的思想来构建界面,使得代码的可复用性和可维护性大大提高。React还引入了虚拟DOM的概念,减少了对真实DOM的直接操作,加快了渲染速度。 React使用虚拟DOM,将页面的渲染操作转化为

    2024年02月14日
    浏览(56)
  • React【React是什么?、创建项目 、React组件化、 JSX语法、条件渲染、列表渲染、事件处理】(一)

           React是什么? 为什么要学习React  React开发前准备  创建React项目 

    2024年02月11日
    浏览(52)
  • React笔记(二)JSX

    一、JSX JSX是javascript XML的简写,实际上是javascript的扩展,既有javascript的语法结构,又有XML的结构 1、JSX的规则要求 jsx必须要有一个根节点 如果不想产生无用的根标签,但是还要遵守JSX的语法的要求,可以使用如下两种方式 JSX必须要有一个根节点,而且编译之后在浏览器中不

    2024年02月11日
    浏览(42)
  • StencilJs 学习之 JSX

    Stencil 组件使用 JSX 渲染,这是一种流行的声明式模板语法。每个组件都有一个渲染函数,它返回在运行时渲染到 DOM 的组件树。 render 函数用于输出将绘制到屏幕上的组件树。 在这个例子中,我们返回了一个 div ,它有两个子元素 h1 和 p 。 如果你想修改宿主元素本身,比如向

    2024年02月09日
    浏览(33)
  • JSX、TSX 整体理解

    可以少去理解一些不必要的概念,而多去思考为什么会有这样的东西,它解决了什么问题,或者它的运行机制是什么? JavaScript 是互联网上最流行的脚本语言,这门语言可用于 HTML 和 web,更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。 https://www.runoob.c

    2024年02月05日
    浏览(44)
  • react之组件与JSX

    概述:React是一个用于构建用户界面(UI)的JavaScript库,用户界面由按钮,文本和图像等小单元内容构建而成。React帮助你把它们组合成可重用,可嵌套的组件。从web端网站到移动端应用,屏幕上的所有内容都可以被分解成组件。 定义组件 一直以来,创建网页时,Web 开发人员

    2024年04月25日
    浏览(35)
  • React的基础概念JSX

    首先我们需要创建虚拟DOM,然后渲染虚拟DOM到页面上展示 其次在写react的内容的时候,我们在script里面,需要填写类型为babel,而不是JavaScript。因此我们需要在上方引入babel文件夹 另外还需要引入react核心库和react-dom文件,react-dom是用于支持react操作DOM的 类型为babel是为了告诉

    2024年02月11日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包