今天开始了Vue的学习,下面我就记录一下学习了什么。

1.什么是Vue?

vue是一套基于javaScript的渐进式框架,是MVVM框架。View ——ViewModel——Model  其中View就是视图层, Model就是数据层,而中间的监控者就负责监控两侧的数据,并相对应地通知另一侧进行修改。比如,你在数据层改变了某个数据的值,那么视图层的数据也会修改。这个过程就是有ViewModel来操作的,不需要你手动地去写代码去实现(你不用再手动操作DOM了)。

2.Vue的基础知识点:

 1)数据绑定,<p>{{name}}</p>     在标签里面绑定数据,通过两个大括号可以取得data里面想要显示的数据

    eg:实例话一个对象在app.js里面

    new Vue({

      el:"#vue-app",
      data:{
        name:'hello'
      }
    });
 
  2)vue的属性绑定方式:
    <a v-bind:href="website" target="blank">百度首页</a>
    <input type="text" v-bind:value="job"/>
    <p v-html="websiteTag"></p>
  3)vue事件绑定:  
  <div id="vue-app">
    <h1> Events </h1>
    <button v-on:click="add(1)">涨一岁</button><!-- 点击添加一岁 -->
    <button v-on:click="subtract(1)">减一岁</button><!--点击事件的所写:@click="subtract(1)" -->
    <!-- 传入参数10 -->
    <button v-on:dblclick="add(10)">涨十岁</button><!-- 双击添加十岁 -->
    <button v-on:dblclick="subtract(10)">减十岁</button>
    <p>我的年龄是:{{age}}</p>
    <!-- 鼠标移动事件 -->
    <div id="canvas" v-on:mousemove="updateXY">
      {{x}},{{y}}————<span v-on:mousemove.stop ="stop">Stop</span> <!-- 阻止冒泡事件属性 -->
    </div>
    <!-- 双向数据绑定 -->
    <h1>键盘 Events </h1>
    <label for="">姓名:</label>
    <input ref="aaa" type="text" v-on:keyup="logName" />
    <span>{{name}}</span>
    <label for="">年龄:</label>
    <input ref="bbb" type="text" v-on:keyup="logAge" />
    <span>{{age}}</span>
  </div>

  

<script>
  // 实例化
  new Vue({
    el:'#vue-app', //获取根容器
    data:{
      age:30,
      x:0,
      y:0
    },
    methods:{
      add:function(inc){ //接收传过来的参数
        console.log(inc);
        this.age += inc;
      },
      subtract:function(dec){
        this.age -= dec;
      },
      updateXY:function(event){ //event暂时先理解为所有的默认事件集合自带的
        console.log(event);
        this.x = event.offsetX; //获取x轴的位置坐标,并赋值给x
        this.y = event.offsetY; //获取Y轴的位置坐标,并赋值给y
      },
      stop:function(event){
        event.preventDefault(); //阻止事件冒泡并且阻止默认行为,什么元素有默认行为呢?如链接<a>,提交按钮<input type=”submit”>。
        event.stopPropagation();//阻止事件冒泡但是不会阻止默认行为
      },
      logName:function(){
        this.name = this.$refs.aaa.value;
      },
      logAge:function(){
        console.log("你正在输入年龄");
        this.age = this.$refs.bbb.value;
      }
    }
  })
</script>
 
/*
键盘事件:v-on:keyup v-on:keydown
键值修饰符: v-on:keyup.enter 只有按enter键才会执行方法
双向数据绑定: input /select /textrea 一般输入输出的时候会存在双向数据绑定的问题。
实现双向数据绑定的两种方式:
1. 通过事件操作属性的方式。
<input ref="name" type="text" v-on:keyup="logName" />
在input中定义(给input一个ref的标记,通过标记获取input里面的value)一个ref的属性,当键盘事件输入内容后触发这个方法,
方法里面我们需要获取input里面的值,并且赋给vue,在vue里面获取值得方式,就是this.$refs.name.value;
2. v-model指令的方式。
v-model = "name" 把data里面的值赋给v-model
*/
 
哇呀呀,不早了,今天大概就写到这里,突然感觉脑子一片空白,好像今天学的东西一下子都忘光了,最近发现记忆力真的是严重衰退,总是忘东忘西的,不知道是怎么了。我要早点提升,早点找到一份稳定的工作,工资可以不用很高,距离家近就可以了。希望自己可以早点找到想要的工作,加油,我一定可以的。


 
    

Vue学习记录第一天的更多相关文章

  1. Vue学习记录第一篇——Vue入门基础

    前面的话 Vue中文文档写得很好,界面清爽,内容翔实.但文档毕竟不是教程,文档一上来出现了大量的新概念,对于新手而言,并不友好.个人还是比较喜欢类似于<JS高级程序设计>的风格,从浅入深, ...

  2. Java学习记录第一章

    学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点. 计算机语言的发展大概过程:机器语言--->汇编语言---> ...

  3. vue学习记录④(路由传参)

    通过上篇文章对路由的工作原理有了基本的了解,现在我们一起来学习路由是如何传递参数的,也就是带参数的跳转. 带参数的跳转,一般是两种方式: ①.a标签直接跳转. ②点击按钮,触发函数跳转. 在上篇文章中 ...

  4. Vue学习记录第二天

    又来做笔记啦,今天又自暴自弃了,还好及时清醒过来了,什么时候努力都不晚,主要是要一直坚持下去,只要坚持就一定会有收获,所有成功得人背后都是付出了巨大得努力的,没有人平白无故的成功.看似光鲜亮丽的背后, ...

  5. Vue学习【第一篇】:Vue初识与指令

    什么是Vue 什么是Vue Vue.js是一个渐进式JavaScript框架它是构建用户界面的JavaScript框架(让它自动生成js,css,html等) 渐进式:vue从小到控制页面中的一个变量 ...

  6. PHP学习记录第一篇:Ubuntu14.04下LAMP环境的搭建

    最近一段时间会学习一下PHP全栈开发,将会写一系列的文章来总结学习的过程,以自勉. 第一篇记录一下LAMP环境的安装 0. 安装Apache Web服务器 安装之前先更新一下系统 sudo apt-g ...

  7. vue学习记录:vue引入,validator验证,数据信息,vuex数据共享

    最近在学习vue,关于学习过程中所遇到的问题进行记录,包含vue引入,validator验证,数据信息,vuex数据共享,传值问题记录 1.vue 引入vue vue的大致形式如下: <temp ...

  8. [20190614]webpack+vue学习记录

    本文记录一些学习webpack+vue相关的知识点,方便以后查阅,添加或修改 1. 初始化vue项目的代码结构 build--项目依赖包配置信息 config--项目配置文件 dev.env.js-- ...

  9. vue学习记录(一)—— vue开发调试神器vue-devtools安装

    网上有些贴子少了至关重要的一步导致我一直没装上, 切记!!install后还需build,且install和build都在vue-devtools文件夹内执行 github下载地址 点击跳转 具体步骤 ...

随机推荐

  1. Visual studio 配置

    解决方案 一个解决方案的文件结构: .sln        项目目录         debug   release 其中,debug与release放置最终生成的dll或exe,项目目录下包含 头文 ...

  2. JavaScript高级程序设计(读书笔记)(一)

    本笔记汇总了作者认为“JavaScript高级程序设计”这本书的前七章知识重点,仅供参考. 第一章 JavaScript简介 JavaScript发展简史: 1995年,JavaScript诞生 19 ...

  3. file_get_contents函数偶尔报错的抑制显示

    $result = @file_get_contents($url);可以使用@进行抑制file_get_contents()的报错 @是为了抑制错误显示,让用户看不到,提升用户体验.注意:只是抑制错 ...

  4. Windows Internals 笔记——线程

    1.进程有两个组成部分,一个进程内核对象和一个地址空间.线程也有两个组成部分: 一个是线程的内核对象,操作系统用它管理线程.系统还用内核对象来存放线程统计信息的地方. 一个线程栈,用于维护线程执行时所 ...

  5. IIS 支持 m3u8

    加上俩 MIME 类型就可以了 <mimeMap fileExtension=".m3u8" mimeType="application/x-mpegURL&quo ...

  6. asp+SqlServer2008开发【第一集:安装SqlServer2008以及登陆】

    参考:https://blog.csdn.net/i_likechard/article/details/75299983 1,安装sqlServer2008的具体步骤参考网上其他教程,自己根据注释引 ...

  7. CodeForces 721C Journey(拓扑排序+DP)

    <题目链接> 题目大意:一个DAG图有n个点,m条边,走过每条边都会花费一定的时间,问你在不超过T时间的条件下,从1到n点最多能够经过几个节点. 解题分析:对这个有向图,我们进行拓扑排序, ...

  8. C# 默认访问修饰符

    c# 中类,成员,枚举,结构等默认访问修饰符是? 根据MSDN文档有: [MSDN] Classes and structs that are not nested within other clas ...

  9. 获取验证码倒计时60s

    倒计时函数: function time(btns) { if (wait == 0) { btns.css("background-color","#F84C02&qu ...

  10. PHPstorm远程连接侧边栏怎么打开,远程数据库侧边栏怎么打开