vue对比react18

1.模板语法------->jsx

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

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

javascript 复制代码
<!--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函数来处理。

javascript 复制代码
<!--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+事件名称={事件处理程序},整体上遵循驼峰命名法

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

4.行内样式写法不同:

html 复制代码
//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="类名"

相关推荐
李姆斯6 小时前
为啥Agent在coding表现这么好,但是在别的领域就是差的不少?
前端·agent·ai编程
鱼与宇8 小时前
前端Web(html+css+js+vue3)
前端
孙克旭_8 小时前
Docker 镜像构建|Vue+SpringBoot+Go 多语言项目 Dockerfile 案例
linux·运维·vue.js·spring boot·docker·dockerfile
雪芽蓝域zzs10 小时前
(六)打包优化 + Nginx 部署完整配置 + 项目收尾
前端·vue.js
研☆香10 小时前
聊一聊前端的常见字 关键字
开发语言·前端·javascript
东风破_10 小时前
JWT 1:从一个登录请求开始,理解 React 项目里的 API 层与 Mock
前端·后端
东风破_10 小时前
JWT 3:为什么 Token 要放进 Authorization?Axios 拦截器到底解决了什么?
前端·后端
东风破_10 小时前
JWT 5:路由守卫是什么?把整个 JWT 登录鉴权流程串起来
前端·后端
东风破_10 小时前
JWT 2:HTTP 是无状态的,为什么登录成功后还要给 Token?
前端·后端
东风破_10 小时前
JWT 4:Zustand 到底解决了什么?为什么登录状态要放进 Store?
前端·后端