Vue基础(一)

简介: Vue基础

1 Vue简介

1.1 什么是Vue

Vue是一套用于构建用户界面的前端框架

构建用户界面:

用Vue往页面中填充数据非常方便。

前端开发者最主要的工作就是为网站的使用者构建美观、舒适、好用的网页。

框架:

一套现成的解决方案

vue全家桶:vue(核心库)、vue-router(路由方案)、vuex(状态管理方案)、vue组件库(快速搭建页面UI效果的方案)

辅助vue开发的一系列工具:

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

vite:npm全局包,一键生成vue项目,小而巧

vue-devtools:浏览器插件,辅助调试工具

vetur:vscode插件,提供语法高亮和智能提示

1.2 vue的特性

vue框架的特性主要体现在:

1.数据驱动视图

使用vue的页面中,vue会监听数据的变化,自动重新渲染页面的结构(数据驱动视图是单向的数据绑定)

数据发生变化,页面会自动重新渲染

2.双向数据绑定

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

1.3 MVVM

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

它把每个HTML页面拆分成三个部分:

Model:当前页面所渲染的DOM结构。

View:当前页面渲染时所依赖的数据源。

ViewModel:vue实例,MVVM的核心。

1.3.1 MVVM的工作原理

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

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

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

1.4 vue的版本

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

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

3.x版本的vue 于 2020-09-19发布,生态还不完善,尚未在企业级项目开发中普及和推广

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

vue3.x和vue2.x版本的对比:

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

新增的功能例如:

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

废弃的旧功能如下:

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

[详细的变更信息,请参考官方文档给出的迁移指南](https://v3.vuejs.org/guide/ migration/introduction.html)

2 vue的基本使用

2.1 基本使用步骤

1.导入vue.js的script脚本文件可在官网下载

2.在页面中声明一个将要被vue所控制的DOM区域

3.创建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>
    <!-- 要Vue控制的区域 -->
    <div id="app"> {{ username }} </div>
    <!-- 导入vue -->
    <!-- 开发环境版本,包含了有帮助的命令行警告 -->
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <script>
        // 创建vue的实例对象
        const vm = new Vue({
            // el属性是固定写法,表示当前vm实例要控制页面上的哪个区域,接收值是一个选择器
            el: '#app',
            // data对象就是要渲染到页面上的数据
            data: {
                username: '张三'
            }
        })
    </script>
</body>
</html>

2.2 基本代码与MVVM的对应关系

2.3 Vue的调试工具

vue-devtools

vue官方提供的调试工具,能够方便开发者对vue项目进行调试与开发。

vue-devtools官网

Vue.js devtools - Crx4Chrome插件下载

Microsoft Edge 浏览器中 Vue.js devtools 插件安装与使用 …

GitHub - vuejs/devtools: ⚙️ Browser devtools extension …

Vue2和Vue3的浏览器调试工具不能交叉使用,即Vue2调试工具只能用于Vue2的调试,Vue3的调试工具只能用于Vue3的调试。

Vue2调试工具:

Vue3调试工具:

记得设置这两个:

3 Vue的指令

3.1 指令的概念

指令是Vue为开发者提供的模板语法,用于辅助开发者渲染页面的基本结构。

3.2 指令的分类

指令按照不同的用途可以分为如下6大类:

1.内容渲染指令

2.属性绑定指令

3.事件绑定指令

4.双向绑定指令

5.条件渲染指令

6.列表渲染指令

3.3 内容渲染指令

内容渲染指令是用来辅助开发者渲染DOM元素中的文本内容。

3.3.1常用的内容渲染指令:

1.v-text

2.{{ }}

3.v-html

3.3.2 v-text

用法示例:

<!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>
    <div id="app">
        <!-- 要渲染的DOM -->
        <p v-text="username"></p>
    </div>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <script>
        const vm = new Vue({
            el: '#app',
            // 要渲染的数据
            data: {
                username: '张三'
            }
        })
    </script>
</body>
</html>

v-text的缺点:会覆盖元素内部原有的内容

相关文章
|
3天前
|
JavaScript 前端开发
Vue,如何引入样式文件
Vue,如何引入样式文件
|
3天前
|
JavaScript
|
1天前
|
JavaScript 开发工具 git
大事件项目40---Vue代码里如何引入相对路径图片
大事件项目40---Vue代码里如何引入相对路径图片
|
2天前
|
JavaScript
vue滚动到页面底部时加载
vue滚动到页面底部时加载
5 1
|
3天前
|
JavaScript 前端开发 API
|
3天前
|
JavaScript 前端开发 网络架构
Vue如何实现页面跳转路由,实现单页面跳转
Vue如何实现页面跳转路由,实现单页面跳转
|
3天前
|
JavaScript
Vue搭配ELEMENT组件,路由不能正确跳转bug
Vue搭配ELEMENT组件,路由不能正确跳转bug
Vue搭配ELEMENT组件,路由不能正确跳转bug
|
2天前
|
JavaScript 前端开发
一个好看的vue admin模板
这是一个关于Vue管理模板的引用,提到了[PanJiaChen](https://github.com/PanJiaChen/vue-admin-template)在GitHub上的`vue-admin-template`项目。该项目是一个前端管理模板,链接指向了详细的资源。页面中还包含了一张图片,但markdown格式中无法直接显示。简而言之,这是关于一个基于Vue的后台管理界面模板的参考信息。
|
2天前
|
资源调度 JavaScript API
Vue-treeselect:为Vue应用程序提供强大选择器的指南
Vue-treeselect:为Vue应用程序提供强大选择器的指南
6 0
|
2天前
|
JavaScript
vue知识点
vue知识点
5 0