Vue 概述及基本使用详解

 更新时间:2025年10月28日 14:29:46   作者:墨鸦_Cormorant  
Vue是一套用于构建用户界面的渐进式框架,与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用,本文给大家介绍Vue 概述及基本使用,感兴趣的朋友跟随小编一起看看吧

概述

前端技术的发展

从静态走向动态

  • 早期的 HTML 作为静态文件,即使只有部分内容是需要变动的,那么有多少种变动的可能性,就需要准备多少份文档,这对开发者来说是非常不友好的,并且无法与用户进行交互。
  • CGI(Common Gateway Interface)的出现改善了这一情况。CGI 作为服务器拓展功能,可以从数据库或者文件系统获取数据,再将数据渲染为 HTML 文档后,返回至客户端,从而实现了网页的动态生成。
  • CGI 出现的最大意义就是给当时刚起步的 Web 提供了一个发展方向。在这之后,PHP、JSP、ASP 等各种服务端语言层出不穷,不仅弥补了 CGI 的缺陷,而且在性能上愈加高效,在开发上愈加简捷。这些语言的出现和广泛应用,使得 Web 技术飞速发展,前端网页从此从静态走向动态。这个时代被称为 Web1.0 时代。

从后端走向前端

  • 在 Web1.0 时代,前后端是如何协作的呢?由于网页是在服务端使用动态脚本语言和模板引擎渲染出来的,所以一般由前端先写模板,写好后交付给后端套用,之后再由前后端联调,以确认模板套用无误。在这种开发环境下,前后端耦合密切,项目开发需要很高的沟通成本。
  • Ajax (Asynchronous JavaScript And XML,异步 JavaScript 和 XML) 通过 XMLHttpRequest 对象,可以在不重载页面的情况下与 Web 服务器交换数据,再加上 JavaScript 的 document 对象,开发者们可以很轻松地实现页面局部内容刷新。
  • 得益于 Ajax 的发展,前后端分离的趋势日渐明显,前端不再需要依赖后台环境生存,所有服务器数据都可以通过异步交互来获取。
  • 随着 Google V8 引擎问世、PC 和移动端设备性能提高、ES6 和 H5 日趋成熟,浏览器端的计算能力和功能性似乎愈加过剩,开发者们开始将越来越多的业务逻辑代码迁移到前端,前端路由的概念也逐渐清晰。
  • 路由这个概念首先出现在后台。传统 Web 网页间的跳转,需要开发者先在后台设置页面的路由规则,之后服务器根据用户的请求检索路由规则列表,并返回相应的页面。
  • 而前端路由则是在浏览器端配置路由规则,通过侦听浏览器地址的变化,异步加载和更新页面内容。
  • 可以这么说,Ajax 实现了无刷新的数据交互,前端路由则实现了无刷新的页面跳转,Ajax 将 Web Page 发展成 Web App,而前端路由则给了 Web App 更多的可能,如 SPA(Single Page Application,单页面应用)。
  • 现在,很多 Web 项目采用这样的架构,后台只负责数据的存取和组装,而前端则负责业务逻辑层和视图层的全部工作。这一路走来,项目重心已从后端转移到了前端。
  • Angular、 React、Vue等知名的前端框架都有前端路由的概念。

从前端走向全端

Node.js 诞生,Javascript 开始占据服务端编程语言的一席之地。前端工程师可以以很低的成本用 Node.js 和 MongoDB 搭建一个后台。

从 MVC 到 MVVM

  • MVC:模型-视图-控制器(Model-View-Controller)
    • MVC 需要前端开发人员从后端获取需要的数据模型,然后要通过 DOM 操作 Model 渲染到 View 中。
    • 而后当用户操作视图,还需要通过 DOM 获取 View 中的数据,然后同步到 Model 中。
    • Model 指业务模型,用于计算、校验、处理和提供数据,不直接与用户交互
    • View 视图层是用户能够看到并进行交互的客户端界面
    • Controller 负责收集用户输入的数据,向相关模型请求数据并返回响应的视图
  • MVVM:Model-View-ViewModel
    • MVVM 中的 VM 要做的事情就是把 DOM 操作完全封装起来,通过数据绑定,可以将 View 和 ViewModel 关联在一起:
    • 开发人员不用再关心 ViewModel 和 View 之间是如何互相影响的,可以从繁琐的 DOM 操作中解放出来,把关注点放在如何操作 ViewModel 上。

只要 ViewModel 发生了改变,View 上自然就会表现出来

当用户修改了 View,ViewModel 中的数据也会跟着改变

​ Vue.js 就是一套轻量级的 MVVM 框架。

MVVM(Model、View、ViewModel)

简介

  • MVVM 是 vue 实现数据驱动视图和双向数据绑定的核心原理。MVVM 指的是 Model、View 和 ViewModel
    • Model :表示当前页面渲染时所依赖的数据源。
    • View :表示当前页面所渲染的 DOM 结构。
    • ViewModel :表示 vue 的实例,它是 MVVM 的核心。
  • MVVM 把每个 HTML 页面都拆分成了这三个部分,如图所示:

MVVM 的工作原理

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

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

vue 简介

官方给出的概念:**Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的前端框架。**它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助开发者高效地开发用户界面。

与其它大型框架不同的是,Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。同时,Vue 也完全有能力支持采用 SPA 设计和组合其他 Vue 生态的系统。

vue 的特性

主要体现在两个方面:数据驱动视图、双向数据绑定

  • 数据驱动视图
  • 在使用了 vue 的页面中,vue 会监听数据的变化,从而自动重新渲染页面的结构
    • 好处:当页面数据发生变化时,页面会自动重新渲染!
    • 注意:数据驱动视图是单向的数据绑定。

  • 双向数据绑定
    • 在填写表单时,双向数据绑定可以辅助开发者在不操作 DOM 的前提下,自动把用户填写的内容同步到数据源中。
    • 好处:开发者不再需要手动操作 DOM 元素,来获取表单元素最新的值!

vue 的版本

当前,vue 共有 3 个大版本,其中:

  • 3.x 版本的 vue 于 2020-09-19 发布,正在企业级项目开发中普及和推广,是未来企业级项目开发的趋势
  • 2.x 版本的 vue 是目前企业级项目开发中的主流版本,但会在未来几年内被逐渐淘汰;
  • 1.x 版本的 vue 几乎被淘汰,不再建议学习与使用

Vue 项目结构

├─node_modules	// 项目依赖的第三方包
├─public		// 静态文件目录
├───favicon.ico	// 浏览器小图标
├───index.html	// 单页面的html文件
├─src			// 业务文件夹
├───assets		// 静态资源目录
├─────logo.png	// logo图片
├───components	// 可重用组件目录
├─────HelloWorld.vue	// 欢迎页面vue代码文件
├───router		// 路由目录
├───store		// 数据共享目录
├───views		// 视图组件目录
├───store		// 文件存储目录
├───api 		// 跟后台交互,发送fetch、xhr请求,接收响应目录
├───plugins		// 插件目录
├───App.js		// 整个应用的根组件
├───main.js		// 入口js文件
├─.gitignore	// git提交忽略配置
├─babel.config.js	// babel配置
├─jsconfig.json
├─package.json	// 依赖包列表
├─vue.config.js

基本使用

基本使用步骤

<body>
	<!-- 2. 在页面中声明一个将要被 vue 所控制的 DOM 区域 -->
    <div id="app">{{ username }}</div>
    <!-- 1. 导入 vue.js 的 script 脚本 -->
    <script src="./lib/vue.js"></script>
    <script>
        // 3. 创建 vue 实例对象
    	const vm = new Vue({
            // 3.1 指定挂载的 DOM 区域
            el: '#app',
            // 3.2 指定 model 数据源
            data: {
                username: '张三'
            }
        })
    </script>
</body>
  1. 导入 vue.js 的 script 脚本文件
  2. 在页面中声明一个将要被 vue 所控制的 DOM 区域
  3. 创建 vm 实例对象(vue 实例对象)

基本代码与 MVVM的对应关系

到此这篇关于Vue 概述以及基本使用的文章就介绍到这了,更多相关vue 基本使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解vue.js 开发环境搭建最简单攻略

    详解vue.js 开发环境搭建最简单攻略

    本篇文章主要介绍了vue.js 开发环境搭建最简单攻略,这里整理了详细的步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • vue.js实现用户评论、登录、注册、及修改信息功能

    vue.js实现用户评论、登录、注册、及修改信息功能

    这篇文章主要为大家详细介绍了vue.js实现用户评论、登录、注册、及修改信息功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • vue使用计算属性完成动态滑竿条制作

    vue使用计算属性完成动态滑竿条制作

    这篇文章主要介绍了vue使用计算属性完成动态滑竿条制作,文章围绕计vue算属制作动态滑竿条的相关代码完成内容,需要的朋友可以参考一下
    2021-12-12
  • 详解vue如何封装封装一个上传多张图片的组件

    详解vue如何封装封装一个上传多张图片的组件

    上传图片不管是后台还是前端小程序,上传图片都是一个比不可少的功能有时候需要好几个页面都要上传图片,每个页面都写一个非常不方便,本文就给大家介绍vue如何封装一个上传多张图片的组件,需要的朋友可以参考下
    2023-07-07
  • 在Vue中使用动态import()语法动态加载组件

    在Vue中使用动态import()语法动态加载组件

    在Vue中,你可以使用动态import()语法来动态加载组件,动态导入允许你在需要时异步加载组件,这样可以提高应用程序的初始加载性能,本文给大家介绍在Vue中使用动态import()语法动态加载组件,感兴趣的朋友一起看看吧
    2023-11-11
  • 前端vue3实现图片懒加载的完整步骤记录

    前端vue3实现图片懒加载的完整步骤记录

    在现代前端开发中懒加载是一种提高应用性能和用户体验的重要技术,尤其是在处理较大图片或长列表数据时,这篇文章主要介绍了前端vue3实现图片懒加载的相关资料,需要的朋友可以参考下
    2025-06-06
  • vue动态配置模板 ''component is''代码

    vue动态配置模板 ''component is''代码

    这篇文章主要介绍了vue动态配置模板 'component is'代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • VUE3使用Element-Plus时如何修改ElMessage中的文字大小

    VUE3使用Element-Plus时如何修改ElMessage中的文字大小

    在使用Element-plus的Elmessage时使用默认的size无法满足我们的需求时,我们可以自定义字体的大小,但是直接重写样式后,并没有起作用,甚至使用::v-deep深度选择器也没有效果,本文介绍VUE3使用Element-Plus时如何修改ElMessage中的文字大小,感兴趣的朋友一起看看吧
    2023-09-09
  • 安装vue3开发者工具但控制台没有显示出vue选项的解决

    安装vue3开发者工具但控制台没有显示出vue选项的解决

    这篇文章主要介绍了安装vue3开发者工具但控制台没有显示出vue选项的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • vue使用rem实现 移动端屏幕适配

    vue使用rem实现 移动端屏幕适配

    这篇文章主要介绍了vue使用rem实现 移动端屏幕适配的相关知识,通过实例代码介绍了vue用rem布局的实现代码,需要的朋友可以参考下
    2018-09-09

最新评论