vue入门了解

news/2024/7/9 23:53:58 标签: vue, vue.js

vue入门了解

  • 一、 Vue.js是什么?
  • 二、库和框架的区别
    • 1、库(Library 简写Lib)
    • 2、框架(Framework)
  • 三、MVVM的介绍
  • 四、 安装Vue
    • 1、cdn下载(需连接网络)
    • 2、CDN概况
  • 五、实例代码了解
    • 1、 Vue实例(显示Hello Vue!以及获取系统当前时间)
      • 显示Hello Vue!
      • 获取系统当前时间
    • 2、双向数据绑定(Vue two way data binding)
  • 六、什么是BootCDN
    • 1、使用cdn的好处
    • 2、使用cdn的坏处
  • 七、总结

前言

敲太多后端代码,总要看看前端的东西放松一下的。今天我所讲的就是最好的前端框架——vue.js,Vue.js 的目标是通过尽可能简单的 API实现响应的数据绑定和组合的视图组件。很容易学,多学一个没坏处。
在这里插入图片描述

一、 Vue.js是什么?

Vue是一个构建用户界面(UI)的[渐式]JavaScript框架
注:不了解框架的可以往下看一下第二大点

官网链接: https://cn.vuejs.org/.
Vue作者:尤雨溪/中国无锡
以下是官网以及学习界面教程截图,感兴趣的可以自己尝试去看教程学习。
在这里插入图片描述
在这里插入图片描述

二、库和框架的区别

1、库(Library 简写Lib)

库,本质上是一些函数的集合。每次调用函数,实现一个特定的功能,接着把控制权交给使用者
代表:jQuery
jQuery这个库的核心:DOM操作,即:封装DOM操作,简化DOM操作

2、框架(Framework)

框架,是一套完整的解决方案,使用框架的时候,需要把你的代码放到框架合适的地方,框架会在合适的时机调用你的代码。
代表:vue
框架规定了自己的编程方式,是一套完整的解决方案
使用框架的时候,由框架控制一切,我们只需要按照规则写代码
框架的侵入性很高(从头到尾)

举一个简单的例子:
在这里插入图片描述

三、MVVM的介绍

MVVM,可以把它理解为mvc的改版,也是刘雨溪创造vue的参考思想。
MVVM是一种更好的UI模式解决方案,MVVM通过数据双向绑定让数据自动地双向同步。

拆分字母理解:
在这里插入图片描述

注1:虽然没有完全遵循MVVM模型,Vue的设计无疑受到了它的启发。另外一个js框架“knockout”完全遵循MVVM模型
注2:学习Vue要转化思想:“不要再想着怎么操作DOM,而是想着如何操作数据!!!”

四、 安装Vue

1、cdn下载(需连接网络)

开发环境版本,包含了有帮助的命令行警告

// zouyan
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

生产环境版本,优化了尺寸和速度

// zouyan
<script src="https://cdn.jsdelivr.net/npm/vue"></script>

在这里插入图片描述
在这里插入图片描述

2、CDN概况

CDN的全称是Content Delivery Network,即内容分发网络。(想象一下你在玩游戏时卡的时候用的那个加速器)
CDN加速主要是加速静态资源,如网站上面上传的图片、媒体,以及引入的一些Js、css等文件。
CDN加速需要依靠各个网络节点,例如100台CDN服务器分布在全国范围,从上海访问,会从最近的节点返回资源,这是核心
CDN服务器通过缓存或者主动抓取主服务器的内容来实现资源储备
CDN基本原理:将源站内容分发至最接近用户的节点,使用户可就近取得所需内容,提高用户访问的响应速度和成功率。

注1:什么是CDN加速?
CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,
使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率
CDN的关键技术主要有内容存储和分发技术

五、实例代码了解

1、 Vue实例(显示Hello Vue!以及获取系统当前时间)

显示Hello Vue!

每个Vue应用都是通过用Vue构造器创建一个新的Vue实例开始的。
指定vue管理内容区域,通常我们也把它叫做边界,这意味着我们接下来的改动全部在指定的div内,div外部不受影响。

需要了解以及注意的代码:

//zouyan
<div id="d1">{{message}}</div>  
   var vm = new Vue({
     el:'#ID'         // DOM 元素,挂载视图模型,
     data:{},         // 定义属性,并设置初始值
     methods:{}       // 定义方法,用于事件交互时使用的函数  
   });

操作代码:

//zouyan
<html>
 <head>
 	<meta charset="utf-8" />
 	<title>Vue之入门</title>
 	<!--利用javascript的方式把它添加进来,添加进来之后就可以不用管了-->
 	<!--<script type="text/jscript" src="js/vue.js"></script>-->
 	<!--自动模式  会去连接网络自动进行操作-->
 	<script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.1/vue.js"></script>
 </head>
 <body>
 <div id="fff"> <!--id名自定义 要记得统一后面代码-->  
 	<h1>{{title}}</h1>
 </div>
 <!--每个Vue应用都是通过用Vue构造器创建一个新的Vue实例开始的-->
 <!--创建一个新的Vue实例-->
 <script type="text/javascript">
 	var vue=new Vue({<!--json格式-->
 		el: '#fff',   // DOM 元素,挂载视图模型
 		data : function(){   //定义属性,并设置初始值
 			return{
 				title:'Hello Vue!',
 			}
 		},
 	});
 	</script>
 </body>
</html>

显示效果:
在这里插入图片描述

获取系统当前时间

操作代码:

//zouyan
<html>
	<head>
		<meta charset="utf-8" />
		<title>Vue之入门</title>
		<!--利用javascript的方式把它添加进来,添加进来之后就可以不用管了-->
		<!--<script type="text/jscript" src="js/vue.js"></script>-->
		<!--自动模式  会去连接网络自动进行操作-->
		<script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.1/vue.js"></script>
	</head>
	<body>
	<div id="fff">
		<h1>{{title}},ts={{ts}}</h1>
		<input type="text" v-model="count" />
		<button v-on:click="doClick">+</button> <!--click属性  doClick属性名-->
	</div>
	<!--每个Vue应用都是通过用Vue构造器创建一个新的Vue实例开始的-->
	<!--创建一个新的Vue实例-->
	<script type="text/javascript">
		var vue=new Vue({<!--json格式-->
			el: '#fff',   // DOM 元素,挂载视图模型
			data : function(){   //定义属性,并设置初始值
				return{
					title:'Hello Vue!',
					ts:new Date().getTime(),//通过new Date得到获取系统当前时间
					count:10  //默认初始值是10
				}
			},
			methods:{   //定义方法,用于事件交互时使用的函数  
				doClick:function(){
					//当点击这个内容的时候,就把count里的值拿出来
					console.log(this.count);
				}
			} 
		});
		</script>
	</body>
</html>

显示效果:
在这里插入图片描述

注1:data在组件开发中的写法必须是一个函数
注2:vue指令:指的是是带有“v-”前缀的特殊属性
注3:用v-on:click指令绑定单击事件

2、双向数据绑定(Vue two way data binding)

  1. 数据的改变会引起DOM的改变,DOM的改变也会引起数据的变化
  2. 只有当实例被创建时data中存在的属性才是响应式的
  3. 用v-model指令在表单控件元素上创建双向数据绑定
  4. this在methods属性的方法里指向当前Vue实例
  5. 用v-once指令进行单向绑定,一般不用

操作代码:

//zouyan
<html>
	<head>
		<meta charset="utf-8" />
		<title>Vue之入门</title>
		<!--利用javascript的方式把它添加进来,添加进来之后就可以不用管了-->
		<!--<script type="text/jscript" src="js/vue.js"></script>-->
		<!--自动模式  会去连接网络自动进行操作-->
		<script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.1/vue.js"></script>
	</head>
	<body>
	<div id="fff">
		<h1>{{title}},ts={{ts}}</h1>
		<input type="text" v-model="count" />
		<button v-on:click="doClick">+</button> <!--click属性  doClick属性名-->
	</div>
	<!--每个Vue应用都是通过用Vue构造器创建一个新的Vue实例开始的-->
	<!--创建一个新的Vue实例-->
	<script type="text/javascript">
		var vue=new Vue({<!--json格式-->
			el: '#fff',   // DOM 元素,挂载视图模型
			data : function(){   //定义属性,并设置初始值
				return{
					title:'Hello Vue!',
					ts:new Date().getTime(),//通过new Date得到获取系统当前时间
					count:10  //默认初始值是10
				}
			},
			methods:{   //定义方法,用于事件交互时使用的函数  
				doClick:function(){
					//当点击这个内容的时候,就把count里的值拿出来
					//console.log(this.count);
					
					//双向绑定:这样能够实现控制台以及文本框的值完成加+1的操作 例如:点击一下11 再点12 再点13……
					this.count++;
					console.log(this.count);
				}
			} 
		});
		</script>
	</body>
</html>

显示效果:
在这里插入图片描述
注1:console对象可以使用printf风格的占位符。只支持字符(%s)、整数(%d或%i)、浮点数(%f)和对象(%o)四种。
注2:Vue实例还暴露了一些有用的实例属性与方法。它们都有前缀$,以便与用户定义的属性区分开来。

六、什么是BootCDN

BootCDN是Bootstrap中文网支持并维护的前端开源项目免费CDN服务,致力于为Bootstrap、jQuery、Angular、Vuejs
一样优秀的前端开源项目提供稳定、快速的免费 CDN 加速服务。
官网链接: https://www.bootcdn.cn/.

1、使用cdn的好处

  1. 不用担心自己网站访客,在任何时间,任何地点,任何网络运营商,都能快速打开网站,说白了就是把你的资源交给第三方托管,它快你的网站访问就快,并且不需要消耗你的网站流量,提升访问速度。
  2. 各种服务器虚拟主机带宽等采购成本,包括后期运维成本都会大大减少。
  3. 给网站直接带来的好处就是:流量,咨询量,客户量,成单量,都会得到大幅度提升。

想想看,一个打开速度很快的网站和一个打开速度很慢的网站,用户的体验是完全不一样的,那么哪些群体使用更广泛呢?

2、使用cdn的坏处

说完好处也要说说坏处了,对于不使用cdn的网站来说,它崩任他崩,我自坐如松。

对于少数资源依赖cdn的网站来说,可能仅影响体验,比如页面显示、js事件等,但对于严重依赖cdn的网站来说,只能说同归于尽了……
注1:类似的网站还有国外公共静态资源库:unpkg

七、总结

Vue 是一套用于构建用户界面的渐进式框架。与其它框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅容易上手,与第三方库或既有项目的整合还很方便。另一方面,当与现代化的工具链结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。
如果你想在深入学习 Vue 之前对它有更多了解,可以去官网了解核心概念和示例工程。
如果你已经是有经验的前端开发者,想知道 Vue 与其它库/框架有哪些区别,可以去查看对比其它框架。

我是南橙,一个逐渐秃头的橙子Orange。拜了个拜。
在这里插入图片描述


http://www.niftyadmin.cn/n/1678280.html

相关文章

C++ 用于大型程序的工具

《C Primer 4th》读书笔记 相对于小的程序员团队所能开发的系统需求而言&#xff0c;大规模编程对程序设计语言的要求更高。大规模应用程序往往具有下列特殊要求&#xff1a; 1. 更严格的正常运转时间以及更健壮的错误检测和错误处理。错误处理经常必须跨越独立开发的多个子系统…

.net; .com; .gov; .org; .edu这些代码分别是什么意思..

.net&#xff1b;互联网络性质 .com&#xff1b;商业 .gov&#xff1b;政府 .org&#xff1b;组织协会 .edu 教育 一个标准域名&#xff1a;http://www.jx.gov.cn 协议"://""级别""域名名字""性质""地区"转载于:https://blo…

设计模式笔记--单例模式

常用设计模式有23中&#xff0c;分为&#xff1a; 创建型模式&#xff08;主要用于创建对象&#xff09; 1、单例模式 2、工厂方法模式 3、抽象工厂模式 4、建造者模式 5、原型模式 行为型模式 &#xff08;主要用于描述对象或类是怎样交互和怎样分配职责&#x…

vue基本语法01

vue基本语法01一、模板语法1、插值1.1 文本1.2 html1.3 属性1.4 表达式2、指令2.1 核心指令2.2 参数2.3 动态参数2.4 修饰符2.5 简写三、过滤器1、全局过滤器2、局部过滤器四、计算属性五、监听属性六、总结一、模板语法 1、插值 1.1 文本 语法&#xff1a; {{msg}} 文本的操…

产品设计体会(3002)封闭开发

2007年底&#xff0c;又给封闭了好几周了&#xff0c;和外包的项目团队在一起。&#xff08;iamsujie补&#xff1a;2009年春节后又将封闭搞一个项目。&#xff09;算起来到公司有超过一半的时间出于项目封闭状态&#xff0c;也算幸运吧&#xff0c;因为封闭的项目通常是比较重…

Flash Builder 4官方简体中文版的安装与破解

Flash Builder 4官方简体中文版的安装与破解Flash Builder 4 注册机:http://www.xinze.me/wp-content/uploads/2010/04/flash-builder-4-Serial-keygen.ziphttp://files.cnblogs.com/tintown/flashbuiler4keygen.rar安装序列号:1424-4189-9907-1699-3951-00211424-4508-7679-22…

设计模式笔记--工厂方法模式

常用设计模式有23中&#xff0c;分为&#xff1a; 创建型模式&#xff08;主要用于创建对象&#xff09; 1、单例模式 2、工厂方法模式 3、抽象工厂模式 4、建造者模式 5、原型模式 行为型模式 &#xff08;主要用于描述对象或类是怎样交互和怎样分配职责&#x…

Ajax学习(2)---DOM进行Web响应

此文很基础&#xff0c;但是很底层。1. 简单 HTML 页面<html><head><title>Trees, trees, everywhere</title></head><body><h1>Trees, trees, everywhere</h1><p>Welcome to a <em>really</em> boring pag…