vue对比react18

news/2024/11/17 7:32:46/

1.模板语法-——>jsx

JSX表达式用{}包裹,vue模板表达式用{{}}包裹,其余一致。

注意:if语句、switch语句、变量声明属于语句,不是表达式,不能出现在{}或{{}}中

<!--vue-->
<template><div><p>I have a {{ product }}</p><p>{{ product + 's' }}</p><p>{{ isWorking ? 'YES' : 'NO' }}</p><p>{{ product.getSalePrice() }}</p></div>
</template>
<!--react-->
<div><p>I have a { product }</p><p>{ product + 's' }</p><p>{ isWorking ? 'YES' : 'NO' }</p><p>{ product.getSalePrice() }</p>
</div>


2.列表渲染:v-for——>map函数:

vue当中使用v-for进行列表渲染,而react中则使用原生map函数来处理。

<!--vue--><template><ul><li v-for="(item, i) in list" :key="item.id">{{item.text}}</li></ul></template><!--react--><div><ul>{list.map((item, i) => <li key={item.id}>{item.text}</li>)}</ul></div>

 3.基础事件的绑定:v-on——>on+事件名;

vue使用v-on简写@+事件名;react采用on+事件名称={事件处理程序},整体上遵循驼峰命名法

<!-- v-on 的写法 -->
<button v-on:click="handleClick"></button>
<!-- 简写形式 -->
<button @click="handleClick"></button>
//react 语法:on+事件名称={事件处理程序},整体上遵循驼峰命名法
<button onClick={handleClick}></button>

 

4.行内样式写法不同:

//vue 
<div style="width: 100%;height: 25%;padding:0 3%;margin-top: 2%;background-color: #fff;" ><div :style="{width:'12px',height:'12px',marginRight:'4px',background:item.color}"></div>
//react中类似于vue的动态属性样式写法
<div style={{ color: 'red'fontSize:'50px'}}></div>

5.结构中类名写法不同,vue是class="类名",而react是classname="类名"


http://www.ppmy.cn/news/1415369.html

相关文章

spring boot 集成rocketMq + 基本使用

1. RocketMq基本概念 1. NameServer 每个NameServer结点之间是相互独立&#xff0c;彼此没有任何信息交互 启动NameServer。NameServer启动后监听端口&#xff0c;等待Broker、Producer、Consumer连接&#xff0c; 相当于一个路由控制中心。主要是用来保存topic路由信息&#…

thinkphp6 Driver [Think] not supported.

问题的原因&#xff1a;使用view这个类但相应的库未安装&#xff08;新版仅内置了PHP原生模板引擎&#xff09; 官方解释&#xff1a;视图功能由\think\View类配合视图驱动&#xff08;也即模板引擎驱动&#xff09;类一起完成&#xff0c;新版仅内置了PHP原生模板引擎&#x…

TouchGFX 控件附加 ClickListener 功能的方法介绍

1. 引言 TouchGFX 是专用于 STM32 的图形界面设计软件&#xff0c;可用来低成本开发优秀的图形界面&#xff0c;TouchGFX 现已变的越来越流行。为了帮助客户更加深入地理解和使用 TouchGFX &#xff0c;本文介绍了 TouchGFX Designer 中的 Mixin 功能&#xff0c;从基础示例 B…

深入理解Java中Stream流常用方法及示例

深入理解Java中Stream流常用方法及示例 一、介绍二、举例说明1. filter方法2. map方法3. sorted方法4. forEach方法5. reduce方法6. collect方法7. flatMap方法8. anyMatch和allMatch方法9. findFirst和findAny方法10. skip和limit方法11. distinct方法 一、介绍 Java 8引入的…

[C++11] nullptr完整解析

说明&#xff1a;nullptr 是 C11 引入的一个新特性&#xff0c;它表示一个空指针&#xff0c;用于替代之前使用的 NULL。接下来我们看看到底为什么要引入nullptr。 1 为什么引入nullptr C引入nullptr的原因主要是为了提供一种类型安全的表示空指针的方法&#xff0c;以及为了…

vue3的创建使用

一、vue3 用vite创建vue3项目 注意node.js版本 创建一个文件夹 首先要 安装npm &#xff1a; npm i 运行 npm run dev 新建了testView alt shift enter 运行js文件 cd .\ project\node .\index.js\ 二、vue3的特性(vue2和vue3的区别) 使用Proxy代替definePropert…

OJ刷题日记:1、双指针(1)

目录 1、283.移动零 2、1089.复写零 3、202.快乐数 1、283.移动零 题目&#xff1a; 给定一个数组 nums&#xff0c;编写一个函数将所有 0 移动到数组的末尾&#xff0c;同时保持非零元素的相对顺序。 请注意 &#xff0c;必须在不复制数组的情况下原地对数组进行操作。 …

SmartAdmin:以高质量代码为核心的中后台快速开发平台

摘要&#xff1a; 随着数字化进程的加速&#xff0c;中后台系统的开发需求日益增长。为了满足市场对于高效、简洁、安全系统的需求&#xff0c;SmartAdmin 应运而生。作为一个开源项目&#xff0c;SmartAdmin 旨在提供一套基于 SpringBoot 和 Vue3 的高质量代码规范和中后台解决…