vue 渲染函数 h & jsx

h 是什么

vue 提供的创建虚拟 DOM 节点 (vnode)的函数。

https://cn.vuejs.org/api/render-function.html#h

jsx 是什么

JSX是 JavaScript XML(HTML)的缩写,表示在 JS 代码中书写 HTML 结构。简单理解就是: JSX=javascript xml(HTML) ,是 JavaScript 的语法扩展,只要你把HTML代码写在JS里,那就是JSX。

什么时候要用 h | jsx

一:在一些特定场景下,使用 h(JSX)去编写页面会比使用模板语法简单且逻辑更清晰,可以使页面渲染逻辑与判断逻辑更好的绑定在一起。在对于一些代码量较少但重复性较高的片段,使用 h(JSX)可以做到更好的代码复用。
示例:

有这样一个组件,需要通过传入的 Level 去生成不同级别的标题,如果使用模板语法,那可能会需要这样写:

<template> 
  <h1 v-if="level === 1">{{ title }}</h1>
  <h2 v-if="level === 2">{{ title }}</h2>
  <h3 v-if="level === 3">{{ title }}</h3>
</template>

const LevelTag = ({ level }) => { 
  const Tag = `h${level}` 
  return <Tag>123</Tag> 
} 
return <LevelTag level={level} />
二:一些组件库内属性可以传入 vnode 的时候,有可能需要用到 h(JSX)

@arco.design 中的几个组件

Modal

notification

message
在这里插入图片描述在这里插入图片描述在这里插入图片描述
table
在这里插入图片描述

三:UI图里有一些稍微复杂的弹窗

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

vue3渲染函数(h函数)的变化-阿里云开发者社区 vue3渲染函数(h函数)的变化 https://developer.aliyun.com/article/1410904

相关推荐

  1. Vue渲染函数:深入探索与应用实践

    2024-06-15 15:28:06       21 阅读
  2. Vue-条件渲染(初识vue渲染

    2024-06-15 15:28:06       36 阅读
  3. Vue的模板编译:深入理解渲染函数与预编译模板

    2024-06-15 15:28:06       21 阅读
  4. vue3-条件渲染

    2024-06-15 15:28:06       42 阅读
  5. Vue】列表渲染

    2024-06-15 15:28:06       53 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-15 15:28:06       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-15 15:28:06       106 阅读
  3. 在Django里面运行非项目文件

    2024-06-15 15:28:06       87 阅读
  4. Python语言-面向对象

    2024-06-15 15:28:06       96 阅读

热门阅读

  1. Hive 面试题(七)

    2024-06-15 15:28:06       25 阅读
  2. 搜索文档的好助手

    2024-06-15 15:28:06       37 阅读
  3. js中reduce方法是什么

    2024-06-15 15:28:06       71 阅读
  4. 【react】react 使用 Context 的简单示例

    2024-06-15 15:28:06       27 阅读
  5. 科技创新对农业发展的影响

    2024-06-15 15:28:06       30 阅读
  6. 在 npm 上发布包 npm publish

    2024-06-15 15:28:06       29 阅读
  7. Ollama部署的模型,怎么被调用

    2024-06-15 15:28:06       30 阅读
  8. Notepad++ 使用正则表达式删除空行空格方法

    2024-06-15 15:28:06       31 阅读