你好,Vue (Vue核心)_01

这篇博客详细介绍了Vue.js的核心概念,包括MVVM模型、数据绑定、事件处理、计算属性、条件渲染和列表渲染等。从简介到实例生命周期,深入浅出地探讨了Vue的模板语法和各种指令的使用,对于理解和掌握Vue开发非常有帮助。
摘要由CSDN通过智能技术生成

目录

一、简介、初识Vue

二、模板语法

三、数据绑定

四、MVVM模型

五、事件处理

1.事件的基本使用

 2. Vue中的事件修饰符

3.键盘事件

六、计算属性与监视

1.计算属性

2.监视属性

七、class和style绑定

八、条件渲染

1.v-if

2.v-show

九、列表渲染

十、收集表单数据

十一、过滤器

十二、内置指令与自定义属性

十三、Vue实例生命周期


一、简介、初识Vue

中文官网: https://cn.vuejs.org/

遵循MVVM模式,编码简洁,体积小,运行效率高,适合移动/PC端开发。

1.想让Vue工作,就必须创建一个Vue实例,且要传入一个配置对象;
2.root容器里的代码依然符合html规范,只不过混入了一些特殊的Vue语法;
3.root容器里的代码被称为【Vue模板】;
4.Vue实例和容器是一一对应的;
5.真实开发中只有一个Vue实例,并且会配合着组件一起使用;
6.{ {xxx}}中的xxx要写js表达式,且xxx可以自动读取到data中的所有属性;
7.一旦data中的数据发生改变,那么页面中用到该数据的地方也会自动更新;

注意区分:js表达式 和 js代码(语句)
1.表达式:一个表达式会产生一个值,可以放在任何一个需要值的地方:
    (1). a
    (2). a+b
    (3). demo(1)
    (4). x === y ? 'a' : 'b'
2.js代码(语句)
    (1). if(){}
    (2). for(){}

首先引入vue.js文件		

<!-- 准备好一个容器 -->
		<div id="demo">
			<h1>Hello,{
  {name.toUpperCase()}},{
  {address}}</h1>
		</div>

		<script type="text/javascript" >
			Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。

			//创建Vue实例
			new Vue({
				el:'#demo', //el用于指定当前Vue实例为哪个容器服务,值通常为css选择器字符串。
				data:{ //data中用于存储数据,数据供el所指定的容器去使用,值我们暂时先写成一个对                                                                                      象。
					name:'你好',
					address:'北京'
				}
			})

		</script>

二、模板语法

Vue模板语法有2大类:

1.插值语法:

功能:用于解析标签体内容。

写法:{ {xxx}},xxx是js表达式,且可以直接读取到data中的所有属性。

2.指令语法:

功能:用于解析标签(包括:标签属性、标签体内容、绑定事件.....)。

举例:v-bind:href="xxx" 或  简写为 :href="xxx",xxx同样要写js表达式,且可以直接读取到data中的所有属性。

备注:Vue中有很多的指令,且形式都是:v-????,此处我们只是拿v-bind举个例子。

		
<!-- 准备好一个容器-->
<body>
		<div id="root">
			<h1>插值语法</h1>
			<h3>你好,{
  {name}}</h3>
			<hr/>
			<h1>指令语法</h1>
			<a v-bind:href="school.url.toUpperCase()" x="hello">点我去{
  {school.name}}学习1</a>
			<a :href="school.url" x="hello">点我去{
  {school.name}}学习2</a>
		</div>
	</body>

	<script type="text/javascript">
		Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。

		new Vue({
			el:'#root',
			data:{
				name:'jack',
				school:{
					name:'DDD',
					url:'http://www.baidu.com',
				}
			}
		})
	</script>

三、数据绑定

Vue中有2种数据绑定的方式:

1.单向绑定(v-bind):数据只能从data流向页面。

2.双向绑定(v-model):数据不仅能从data流向页面,还可以从页面流向data。

备注:

1.双向绑定一般都应用在表单类元素上(如:input、select等)

 2.v-model:value 可以简写为 v-model,因为v-model默认收集的就是value值。

		<div id="root">
			<!-- 普通写法 -->
			<!-- 单向数据绑定:<input type="text" v-bind:value="name"><br/>
			双向数据绑定:<input type="text" v-model:value="name"><br/> -->

			<!-- 简写 -->
			单向数据绑定:<input type="text" :value="name"><br/>
			双向数据绑定:<input type="text" v-model="name"><br/>

			<!-- 如下代码是错误的,因为v-model只能应用在表单类元素(输入类元素)上 -->
			<!-- <h2 v-model:x="name">你好啊</h2> -->
		</div>
	</body>

	<script type="text/javascript">
		Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。

		new Vue({
			el:'#root',
			data:{
				name:'DDD'
			}
		})
	</script>

四、MVVM模型

            MVVM模型

                        1. M:模型(Model) :data中的数据

                        2. V:视图(View) :模板代码

                        3. VM:视图模型(ViewModel):Vue实例

            观察发现:

                        1.data中所有的属性,最后都出现在了vm身上。

                        2.vm身上所有的属性 及 Vue原型上所有属性,在Vue模板中都可以直接使用。

 

五、事件

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值