原生 JS:数据和视图「分离」,必须手动同步原生 JS 里,数据是数据,视图是视图,两者完全没关系

一、原生 JS:数据和视图「分离」,必须手动同步

原生 JS 里,数据是数据,视图是视图,两者完全没关系

  • 你有一个变量 count = 100(数据)
  • 页面上有一个 <span> 显示 100(视图)
  • 当你点击按钮修改 count 时,必须手动写代码把新的 count 赋值给 <span> 的内容,否则页面永远不会变。

计数器:

复制代码
// 原生JS必须手动做两件事:改数据 + 改视图
addBtn.addEventListener('click', function() {
  count++; // 1. 改数据
  countSpan.textContent = count; // 2. 手动把数据同步到视图(缺一不可!)
});

痛点:项目越大,DOM 操作越多,很容易漏写、写错,导致数据和视图不一致,维护成本爆炸。


二、Vue:数据和视图「双向绑定」,自动同步

Vue 做了一件事:把数据和视图「连接」起来,建立了响应式关系

  • 你把 count 写在 data 里,Vue 会自动给它加上「响应式监听」
  • 页面上的 {``{count}} 会自动「订阅」这个数据的变化
  • 当你修改 count 时,Vue 会自动检测到变化,立刻更新对应的视图,你完全不用写任何 DOM 操作代码。

例子:

复制代码
<!-- 视图:{{count}} 自动绑定data里的count -->
<span>{{count}}</span>
<button @click="count++">+</button>

data: {
  count: 100 // 数据:Vue自动监听它的变化
}

优势:关心「改数据」,Vue 自动帮你「更视图」,彻底解放了 DOM 操作,代码量少、逻辑清晰、不会出错。


三、一句话总结(背下来就是核心)

  • 原生 JS:数据改了,视图不会自己变,必须手动写代码把数据「写」进视图里。
  • Vue:数据改了,视图自动跟着变,因为 Vue 在数据和视图之间搭了一座「自动同步的桥」。

补充:Vue 的「双向绑定」到底是什么?

理解成:

  • data 里的数据是「源」,页面上的视图是「镜像」
  • 源变了,镜像自动变(数据驱动视图)
  • (如果是表单输入)镜像变了,源也自动变(视图驱动数据,比如 v-model

这就是 Vue 能成为前端主流框架的核心原因之一,彻底解决了原生 JS 手动操作 DOM 的痛点。

vue常用的v-bind绑定用:省略并且img的src加上:可以比绑定data的数据url集合等

vue常用的v-show正常用="true/false"

vie常用的v-on绑定事件省略用@并且可以直接click="函数名(参数)"

v-if -else常用时候加="参数true/false"

相关推荐
剑之所向1 小时前
.NET 官方`System.Threading.Channels`
前端·javascript·数据库
计算机魔术师1 小时前
GPT-6 Astra幻觉砍到2%,却被一种老招数轻松绕过
前端
cjy0001112 小时前
2026AI 产品如何从一次性 Demo 变成可重复使用的业务工具?
前端·人工智能·fde
IT_陈寒2 小时前
React的状态更新坑得我差点加班到天亮
前端·人工智能·后端
风骏时光牛马2 小时前
深挖底层逻辑:XX源码深度拆解分析
前端
渡我白衣2 小时前
并查集:基础认识与模拟实现
android·java·javascript·数据结构·c++·算法·并查集
电商API_180079052472 小时前
电商商品价格监控工具淘宝京东商品价格抓取API项目实操分享
java·大数据·开发语言·前端·数据挖掘
sxmas3 小时前
用状态机与DAG建模四阶段业务流程:以MIND模型为例
前端
八角丶3 小时前
Node 网络编程 —— TLS 模块
javascript·后端·node.js
倔强的石头1063 小时前
【Linux指南】动静态库系列(七):符号表与重定位:链接器如何把函数调用接起来
linux·前端·javascript