Vue2_入门体验

前言

大家好,我是yma16,本文分享自己的学习vue2的入门笔记

vue2是什么

Vue2是一种流行的JavaScript框架,用于构建用户界面和单页应用程序。Vue2具有响应式和可组合的视图组件系统,使开发人员可以轻松地构建复杂的用户界面。Vue2还提供了许多其他功能,例如路由管理、状态管理和插件系统。Vue2是Vue.js框架的第二个主要版本,于2016年发布。

vue2的双向绑定

Vue2的双向绑定是指将模板中的数据和组件实例中的数据相互绑定,当一个数据发生变化时,另一个数据也会发生变化,从而实现在模板和组件之间的数据交互。

双向绑定可以通过v-model指令来实现。v-model指令可以绑定到表单的输入控件上,如<input><textarea>等,当表单的值发生变化时,组件实例中的数据也会相应地发生变化,反之,如果组件实例中的数据发生变化,表单的值也会相应地更新。

示例代码如下:

<template>
  <div>
    <input v-model="message" type="text">
    <p>{{ message }}</p>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        message: ''
      }
    }
  }
</script>

在上面的代码中,<input>标签通过v-model指令与组件实例中的message数据双向绑定。当用户输入内容时,message数据会随之更新,同时在<p>标签中展示实时的message数据。当message数据发生变化时,<input>标签的值也会随之更新。

除了v-model指令外,Vue2还提供了其他指令来实现双向绑定,如v-bindv-on指令的缩写:@。这些指令可以在组件的模板中灵活地使用,满足不同场景下的数据交互需求。

vue2的参数传递

在Vue2中,有多种方式可以进行参数传递:

  1. props传递:通过在父组件中定义props属性,将数据传递给子组件。在子组件中通过props属性接收父组件传递的值。

  2. 自定义事件传递:在子组件中通过$emit触发事件,将事件传递给父组件。父组件可以通过在子组件上绑定自定义事件v-on监听子组件的事件。

  3. 父子组件数据共享:使用Vuex来实现全局状态管理,可以让多个组件共享同一个状态数据。

  4. $refs传递:可以通过在父组件中定义ref属性,来获取子组件的实例对象。从而可以通过子组件实例对象的属性和方法,与子组件进行交互。

以上是Vue2中常用的参数传递方式,开发者可以根据具体需求选择最适合的方式。

表单的双向绑定

v-model的使用
在这里插入图片描述

组件

template渲染
在这里插入图片描述
props传递参数
在这里插入图片描述

class和style

v-bind:class按钮控制css样式
在这里插入图片描述

自动收缩导航栏

思路:通过事件触发css样式。
左侧导航栏左移,主菜单跟随左移
改变x方向的属性translateX

效果1

在这里插入图片描述

效果2

在这里插入图片描述
代码块:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>侧边栏</title>
		<!-- 引入阿里图标和vue -->
		<script src="//at.alicdn.com/t/font_1957918_yovoq1vtjq.js"></script>
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
	</head>
		<style>
			/* 图标样式 */
			.icon {
				       width: 2em; height: 2em;//1em=16px
				       vertical-align: -0.15em;
				       fill: currentColor;
				       overflow: hidden;
				    }
			
/* 			*{
				margin: 0px;
				padding: 0px;
				box-sizing:border-box;
			} */
			.page{
				/* display: block; */
				width: 100vw;
				height:100px;
				background-color: #62ebd5;
				position: fixed;
				left:0;
				top:0;
			}
			.leftpage{
				width:200px;
				height:100vh;
				position: fixed;
				left:0;
				top:100px;
				transform:translateX(0vw);
				/* 位置100不显示 */
				background-color: #078bff;
				transition: transform 1s;
			}
			.activeleft{
				transform:translateX(-50vw);
				/* 位置50的时候显示在右边,100到50,从右边到左边 */
			}
			.rightpage{
				width:100vw;
				height:100vh;
				position: fixed;
				right:0;
				top:100px;
				transform:translateX(200px);
				/* 位置100不显示 */
				background-color: #ff985c;
				transition: transform 0.6s;
			}
			.activeright{
				transform:translateX(0vw);
				}
			/* 从左往右,再从右往左逆向 */
		</style>
	<body>
		<div id="app">
			
			<div class="page">
				
				<button @click="css_control" type="button" v-show="!isFlag">隐藏</button>
				<button @click="css_control" type="button" v-show="isFlag">显示</button>
				<form v-show="isFlag" action="" method="post">
					<input type="text" name="username" v-model="username" placeholder="username" value=""/>
					<input type="submit" @click.prevent="submitMethod" value="提交">
					
					<!-- 阻止表单提交 click.prevent-->
				</form>
			</div>
			
			<div class="leftpage" v-bind:class="{activeleft:isFlag}">
				<h1>菜单栏</h1>
			</div>
			<div class="rightpage" v-bind:class="{activeright:isFlag}">
				<h1>主界面</h1>
				</div>
				
		</div>
		<script>
			let app=new Vue(
			{
				el:"#app",
				data:{
					isFlag:false
				},methods:{
					css_control:function(){
						this.isFlag=!this.isFlag
					}
				}
			})
		</script>
	</body>
</html>

结束

本文分享笔记结束,感谢你的阅读,如有不足或者错误欢迎指出!
代码:我的仓库

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Vue.js是一款非常流行的前端框架,它可以帮助我们快速构建交互性强、易于维护的Web应用。如果你想学习Vue.js,下面是一个从入门到精通的学习路线: ## 入门阶段 #### 1. 熟悉HTMLCSS和JavaScript 在学习Vue.js之前,你需要对HTMLCSS和JavaScript有一定的了解。如果没有,可以先学习相关基础知识。 #### 2. 学习Vue.js的基本语法 Vue.js的核心是一个响应式的数据绑定系统和一个组件化的架构。你需要学会使用Vue.js的模板语法、指令、计算属性、组件等等。 #### 3. 学习Vue.js的生命周期 Vue.js的生命周期钩子可以让你在组件的不同阶段执行特定的操作。你需要学习各个钩子的作用以及如何使用它们。 #### 4. 学习Vue.js的路由功能 Vue.js提供了一个官方的路由库vue-router,可以帮助你构建单页面应用。学习如何使用vue-router来进行路由管理。 ## 进阶阶段 #### 1. 学习Vue.js的状态管理 Vue.js提供了一个官方的状态管理库vuex,可以帮助你管理应用中的状态。学习如何使用vuex来进行状态管理。 #### 2. 学习Vue.js的动画效果 Vue.js提供了一个官方的动画库vue-animated,可以帮助你实现各种动画效果。学习如何使用vue-animated来创建动画效果。 #### 3. 学习Vue.js的服务端渲染 Vue.js提供了一个官方的服务端渲染库vue-server-renderer,可以帮助你将Vue.js应用渲染成HTML字符串,以提高SEO效果。学习如何使用vue-server-renderer进行服务端渲染。 ## 精通阶段 #### 1. 学习Vue.js的源码 如果你想深入理解Vue.js的实现原理,可以学习Vue.js的源码。Vue.js的源码非常优雅,是学习前端框架设计的绝佳范例。 #### 2. 学习Vue.js的插件开发 Vue.js的插件机制非常灵活,你可以开发各种各样的插件来扩展Vue.js的功能。学习如何开发Vue.js的插件。 #### 3. 学习Vue.js的性能优化 Vue.js的性能优化非常重要,可以帮助你提高应用的响应速度和用户体验。学习如何进行Vue.js的性能优化。 以上就是Vue2从入门到精通的学习路线,希望对你有所帮助!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yma16

感谢支持!共勉!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值