【Vue】Re01 理论概念和入门上手
一、Vue概述
什么是渐进式?
1、把Vue作应用的一部分嵌套项目中
2、如果完全抛弃其他组件和框架,Vue又具有丰富的生态和库莱支持
3、Core + Router + VueX 满足项目绝大多数的需求
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
特点和特性:
1、解耦视图与数据
2、可复用的组件
3、前端路由技术
4、状态管理
5、虚拟Dom
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Vue 安装
1、使用cdn引用
生产版本和开发版本的区别:
开发版本:
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
保留代码格式,保留警告、打印、提示
所以文件大小较大
生产版本:
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
格式压缩,移除所有的警告、打印、提示
文件大小被压缩到很小
2、下载到本地进行引用
开发:
https://vuejs.org/js/vue.js
生产:
https://vuejs.org/js/vue.min.js
3、使用NPM安装
通过webpack & CLI的使用进行安装
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
原始的JS开发:【编程范式 : 命令式编程】
1、创建一个div标签
2、设置该标签的id值为app
3、在js中定义message变量
4、把message变量放置在div标签中进行显示
Vue的开发:【编程范式 :声明式编程】
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
方法和函数的区别
Method
Function
方法一般被实例所调用,声明定义在类中
函数不具有实例特性,直接声明直接调用
二、上手案例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <!-- 界面的部分只需要处理HTML标签,不需要更改Mustache模板 -->
<div id="app">
<h3>{{message}}</h3>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script type="text/javascript">
const vm = new Vue({
el : '#app', // 绑定挂载的元素
data : { // 定义和声明数据
message : '哈哈哈哈' /* 在这里处理数据 实现页面和数据的解耦 */ /* 另外数据更新也不需要操作Dom实现,直接就能进行重新渲染 */
}
});
</script> </body>
</html>
展示列表:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <div id="app">
<h3>{{message}}</h3>
<p>{{movies}}</p>
<ul>
<li v-for="movie in movies">{{movie}}</li>
</ul>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script type="text/javascript">
const vm = new Vue({
el : '#app',
data : {
message : 'sda',
movies : [
'大话西游',
'星际穿越',
'盗梦空间',
'1911'
]
}
});
</script> </body>
</html>
计数器案例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <!-- 列表显示 -->
<div id="vue-application">
<h3>当前计数值 : {{varCount}} </h3>
<p>
<button @click="increase">增加1</button>
<button @click="decrease">减少1</button>
</p>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script type="text/javascript">
let vueObj = new Vue({
el : '#vue-application' ,
data : {
varCount : 0
},
methods : {
increase() {
// 对计数器的增加进行上限处理
if (this.varCount === 10) {
alert('已达到上限'); return;
}
this.varCount ++
},
decrease() {
// 对计数器的增加进行下限处理
if (this.varCount === 0) {
alert('已达到下限'); return;
}
this.varCount --
}
}
});
</script> </body>
</html>
三、理解MVVM
MVVM = Model + View + ViewModel Model层:
数据层
来自服务请求提供的数据 View层:
视图层
前端开发中Dom结构即视图的显现
主要用来给用户呈现数据处理后的信息 ViewModel层:
视图模型层
VM桥接了 View + Model,是两者沟通建立的桥梁
实现了Data-binding也就是数据绑定
四、Vue实例生命周期

【Vue】Re01 理论概念和入门上手的更多相关文章
- Vue.js 60 分钟快速入门
Vue.js 60 分钟快速入门 转载 作者:keepfool 链接:http://www.cnblogs.com/keepfool/p/5619070.html Vue.js介绍 Vue.js是当下 ...
- 不会几个框架,都不好意思说搞过前端: Vue.js - 60分钟快速入门
Vue.js——60分钟快速入门 Vue.js是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的.相比于Angular.js,Vue.js提供了更加简洁.更易于理 ...
- R语言快速入门上手
导言: 较早之前就听说R是一门便捷的数据分析工具,但由于课程设计的原因,一直没有空出足够时间来进行学习.最近自从决定本科毕业出来找工作之后,渐渐开始接触大数据行业的技术,现在觉得是时候把R拿下 ...
- Oracle RAC学习笔记:基本概念及入门
Oracle RAC学习笔记:基本概念及入门 2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章] oracle 10g real applica ...
- spring boot + vue + element-ui全栈开发入门——开篇
最近经常看到很多java程序员朋友还在使用Spring 3.x,Spring MVC(struts),JSP.jQuery等这样传统技术.其实,我并不认为这些传统技术不好,而我想表达的是,技术的新旧程 ...
- spring boot + vue + element-ui全栈开发入门——基于Electron桌面应用开发
前言 Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库. Electron通过将Chromium和Node.js合并到同一个运行时环 ...
- Vue.js——60分钟快速入门(转)
vue:Vue.js——60分钟快速入门 <!doctype html> <html lang="en"> <head> <meta ch ...
- spring boot + vue + element-ui全栈开发入门
今天想弄弄element-ui 然后就在网上找了个例子 感觉还是可以用的 第一步是完成了 果断 拿过来 放到我这里这 下面直接是连接 点进去 就可以用啊 本想着不用vue 直接导入连接 ...
- Vue.js + Webpack + ECMAScript 6 入门教程
Vue.js学习教程 1.Vue.js——60分钟快速入门 2.Vue.js——60分钟组件快速入门(上篇) 3.Vue.js——60分钟组件快速入门(下篇) 4.Vue.js——基于$.ajax实现 ...
- 每天记录一点:NetCore获得配置文件 appsettings.json vue-router页面传值及接收值 详解webpack + vue + node 打造单页面(入门篇) 30分钟手把手教你学webpack实战 vue.js+webpack模块管理及组件开发
每天记录一点:NetCore获得配置文件 appsettings.json 用NetCore做项目如果用EF ORM在网上有很多的配置连接字符串,读取以及使用方法 由于很多朋友用的其他ORM如S ...
随机推荐
- Linux Topicons Plus桌面工具安装
Topicons Plus是Linux系统GNOME桌面环境的工具,方便于在工具栏显示应用小图标. 1.进入GNOME商店搜搜下载TopIcons Plus工具.下载路径:https://extens ...
- (九)selenium实现12306模拟登录
登陆的唯一困难在于验证码的识别,此处使用第三方平台超级鹰进行验证码识别. from selenium import webdriver import time from PIL import Imag ...
- [OC]一个括号新建一个类
[OC]一个括号新建一个类 特别说明 以下代码仅仅用于说明用途,命名也不是特别规范,小朋友不要模仿哦. 前言 在iOS开发中,我们会经常用到这么一段代码: UIView *myView = [UIVi ...
- 算法金 | 没有思考过 Embedding,不足以谈 AI
大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 抱个拳,送个礼 在当今的人工智能(AI)领域,Embedding 是一个不可或缺的概念 ...
- Android JACK 编译错误SSL error when connecting to the Jack server
背景 之前编译好好,今天居然遇到了这样子的问题.还以为是和之前一样,Android7.0 配置JACK支持多用户同时编译. 结果不是: /bin/bash -c "(prebuilts/sd ...
- HTTP协议 学习:0-有关概念
HTTP协议 学习:0-有关概念 背景 实际上,HHTP协议是一种比较简单的协议,它的本质上是一个文本协议,在实际开发中,我们重点关注解析对方发来的内容的过程(字符串匹配). 参考资料: HTTP H ...
- Redis的几种应用实战
1.分布式锁: 实现:用set key value ex time nx指令实现,这个指令以及其参数是原子性的操作.释放锁用del key,释放之前先比较一下value是否与当前的value一样,原因 ...
- python基础-元组tuple( )
元组的定义和操作 元组的特性: 元素数量 支持多个 元素类型 任意 下标索引 支持 重复元素 支持 可修改性 不支持 数据有序 是 使用场景 不可修改.可重复的 一批数据记录场景 # 定义元组 ...
- PHP转Go系列 | GET 和 POST 请求的使用姿势
大家好,我是码农先森. 说到 HTTP 请求工具想必对我们做 Web 开发的程序员都不陌生,只要涉及到网络请求都必须使用.对于我们 PHP 程序员来说,最熟悉不过的就是 CURL 扩展,只要安装的这个 ...
- Linux 中 uid、gid、euid、egid、groups 之间的关系
导航 1 权限匹配流程 2 五种身份变化 3 有效用户/组 4 特权对 Shell 脚本无效 5 Sudo 与 SUID/SGID 的优先级 6 SUID.SGID.Sticky 各自的功能 Linu ...