【Vue】Vue的简单介绍与基本使用

news/2024/11/29 1:46:13/

一、什么是Vue

Vue是一款用于构建用户界面的 JavaScript 框架。

它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。

无论是简单还是复杂的界面,Vue 都可以胜任。

1.构建用户界面

传统方式

vue方式

使用 vue 构建用户界面,解决了jQuery + 模板引擎的诸多痛点

Vue较于jQuery的优势

  1. 使用指令,而不是模板引擎

  1. 数据驱动视图

  1. 事件绑定的方式实现交互

2.Vue全家桶

官方给 vue 的定位是前端框架,因为它提供了构建用户界面的一整套解决方案(俗称 vue 全家桶

  • vue(核心库)

  • vue-router(路由方案)

  • vuex(状态管理方案)

  • vue 组件库(快速搭建页面UI 效果的方案)

以及辅助 vue 项目开发的一系列工具

  • vue-cli(npm 全局包:一键生成工程化的vue 项目 - 基于webpack、大而全)

  • vite(npm 全局包:一键生成工程化的vue 项目 - 小而巧)

  • vue-devtools(浏览器插件:辅助调试的工具)

  • vetur(vscode插件:提供语法高亮和智能提示)

vue-cli、vite:帮助程序员一键生成工程化的Vue项目!

总的来说

3.Vue特性与版本

Vue特性

(1)数据驱动视图

什么是数据?什么是视图?

数据指的是API接口返回的数据,或者是“写死”的数据;视图指的是页面渲染出来的DOM结构。

在使用了 vue 的页面中,vue 会监听数据的变化,从而自动重新渲染页面的结构。

注意点:

数据驱动视图是单向的数据绑定。即上图的“箭头”是单向的!

(2)双向数据绑定

在填写表单时,双向数据绑定可以辅助开发者在不操作DOM 的前提下,自动把用户填写的内容同步到数据源中。

这样子,开发者不再需要手动操作DOM 元素,来获取表单元素最新的值!也就是说,如果需要最新的值,直接操作data即可

Vue版本

当前Vue的主流版本

当前,vue 共有 3 个大版本

  • 2.x 版本的 vue 是目前企业级项目开发中的主流版本

  • 3.x 版本的 vue 于 2020-09-19 发布,生态还不完善,尚未在企业级项目开发中普及和推广,但是Vue3.X必定是是未来企业级项目开发的趋势!!!

  • 1.x 版本的 vue 几乎被淘汰,不再建议学习与使用

vue2.X与 vue3.X对比

vue2.x 中绝大多数的API 与特性,在 vue3.x 中同样支持。同时,vue3.x 中还新增了3.x 所特有的功能、并废弃了某些2.x 中的旧功能!

新增的功能

组合式API、多根节点组件、更好的TypeScript 支持等

废弃的旧功能

过滤器、不再支持$on,$off 和 $once 实例方法等

4.MVVM

MVVC简介

MVVM是 vue 实现数据驱动视图双向数据绑定核心原理

它把每个HTML 页面都拆分成了如下三个部分:

View:表示当前页面所渲染的DOM 结构。

Model:表示当前页面渲染时所依赖的数据源

ViewModel:ViewModel起到一个连接的作用,表示 vue 的实例,它是MVVM 的核心。

MVVM工作原理

ViewModel 作为MVVM 的核心,是它把当前页面的数据源(Model)和页面的结构(View)连接在了一起。

  • 数据源发生变化时,会被ViewModel 监听到,VM 会根据最新的数据源自动更新页面的结构。

  • 表单元素的值发生变化时,也会被ViewModel 监听到,VM 会把变化过后最新的值自动同步到Model 数据源中。

二、Vue的基本使用

基本使用步骤

① 导入 vue.js 的 script 脚本文件
② 在页面中声明一个将要被vue 所控制的DOM 区域
③ 创建vm 实例对象(vue 实例对象)
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title></head><body><!-- 2. 声明要被 vue 所控制的 DOM 区域 --><div id="app">{{username}} : {{age}}</div><!-- 1. 导入 vue 的脚本文件 --><script src="../../lib/vue-2.6.12.js"></script><!-- 3. 创建 vue 的实例对象 --><script>const vm = new Vue({// 3.1 使用 el 属性,指定 vue 要控制的区域el: '#app',// 3.2 数据源data: {username: 'zs',age: 20},})</script></body>
</html>

上述代码的效果,就是将username和age的值渲染到页面上!

Vue代码解析

上述代码,是最基本的Vue的示例代码,如果看不太明白的小伙伴也可以看看《书栈》上面的文章:

Vue.js 的Hello World解析

基本代码与MVVM 的对应关系

Vue的网页调式工具

这边使用的浏览器是Edge(反正现在也是google内核),google的话安装插件如果之前没有配置“科学上网”可能会有一点麻烦。

先到Edge应用商店下载:

Edge外接程序

点击安装即可:

开启Vue插件

点击详细信息,并修改下述两个配置项

点击F12,最后有一个Vue的框框,大致样式如下:


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

相关文章

2022年MathorCup数学建模C题自动泊车问题解题全过程文档加程序

2022年第十二届MathorCup高校数学建模 C题 自动泊车问题 原题再现 自动泊车是自动驾驶技术中落地最多的场景之一&#xff0c;自动泊车指在停车场内实现汽车的自动泊车入位过程&#xff0c;在停车空间有限的大城市&#xff0c;是一个比较实用的功能&#xff0c;减少了驾驶员将…

科技云报道荣膺第三届中国数字经济科技大会“年度融合报道创新奖”

2023年2月25日&#xff0c;2022第三届中国数字经济科技大会在江苏盐城成功举办。本次大会上&#xff0c;科技云报道荣膺第三届中国数字经济科技大会“年度融合报道创新奖”。 这是科技云报道继荣获全球云计算大会“云鼎奖”2013-2022十周年特别贡献奖、腾讯云开发者社区“2022年…

基于 WebSocket、Spring Boot 教你实现“QQ聊天功能”的底层简易demo

目录 前言 一、分析 1.1、qq聊天功能分析 1.2、WebSocket介绍 1.2.1、什么是消息推送呢&#xff1f; 1.2.2、原理解析 1.2.3、报文格式 二、简易demo 2.1、后端实现 2.1.1、引入依赖 2.1.2、继承TextWebSocketHandler 2.1.3、实现 WebSocketConfigurer 接口 2.2、…

SpringBoot With IoC,DI, AOP,自动配置

文章目录1 IoC&#xff08;Inverse Of Controller&#xff09;2 DI&#xff08;Dependency Injection&#xff09;3 AOP&#xff08;面向切面编程&#xff09;3.1 什么是AOP&#xff1f;3.2 AOP的作用&#xff1f;3.3 AOP的核心概念3.4 AOP常见通知类型3.5 切入点表达式4 自动配…

【Linux】-- 基本指令

目录 用户管理 adduser passwd userdel pwd ls指令 -l -a -d -F -r -t -R -1 which alias ll ls -n cd cd - cd ~ touch -d stat mkdir -p rmdir rm -r -f man cp ​编辑 -r -f mv cat -n tac more less -N head tail | 管道 dat…

Android Compose——一个简单的Bilibili APP

Bilibili移动端APP简介依赖效果登录效果WebView自定义TobRow的Indicator大小首页推荐LazyGridView使用Paging3热门排行榜搜索模糊搜索富文本搜索结果视频详情合集信息Coroutines进行网络请求管理&#xff0c;避免回调地狱添加suspendwithContextGit项目链接末简介 此Demo采用A…

koa-vue的分页实现

1.引言 最近确实体会到了前端找工作的难处&#xff0c;不过大家还是要稳住心态&#xff0c;毕竟有一些前端大神说的有道理&#xff0c;前端发展了近20年&#xff0c;诞生了很多leader级别的大神&#xff0c;这些大神可能都没有合适的坑位&#xff0c;我们新手入坑自然难一些&am…

hive真实表空间大小统计

1. 问题 如果是采用hdfs上传加载的表、或者是flume直接写hdfs的表空间通常看hive的属性是不准确的。 2. 思路 为了使结果更精确&#xff0c;我们直接使用linux下命令统计hive仓库目录下的每个表对应的文件夹目录占用空间的大小。 3. 解决方法 这里建立三层表结构 ods: 原始…