今天开始了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. JDK 11中的ZGC-一种可扩展的低延迟垃圾收集器

    # 背景正如我们所知道的在JDK 11中即将迎来ZGC(The Z Garbage Collector),这是一个处于实验阶段的,可扩展的低延迟垃圾回收器.本文整合了外网几篇介绍ZGC的文章和代码. ...

  2. 论文阅读笔记四十二:Going deeper with convolutions (Inception V1 CVPR2014 )

    论文原址:https://arxiv.org/pdf/1409.4842.pdf 代码连接:https://github.com/titu1994/Inception-v4(包含v1,v2,v4)   ...

  3. Jrebel最新激活破解方式以及一些必要的配置支持

    启动内存配置 jrebel用diea打开的时候,有时需要手动的配置一下jvm内存,项目才能正常启动: 如 VM Options: -Xms256m -Xmx700m -XX:MaxPermSize=2 ...

  4. PHP实现微信开发中提现功能(企业付款到用户零钱)

    一.实现该功能目的 这几天在小程序里要实现用户从系统中提现到零钱的功能,查了一下文档可以使用 企业付款到用户零钱 来实现: 官方文档:https://pay.weixin.qq.com/wiki/do ...

  5. .NET Core 添加Java 服务引用(WebService) 曲折历程(二)

    简介: 以为添加完插件后获取内容会一帆风顺,认真你就错了...,安装之后异步结果各种Error错误,获取不到任何信息. 在这里给大家个建议,查资料还是要用微软必应:https://cn.bing.co ...

  6. 在.NET开发中的单元测试工具之(1)——NUnit

    NUnit介绍 NUnit是一个专门针对于.NET来写的单元测试框架,它是xUnit体系中的一员,在xUnit体系中还有针对Java的JUnit和针对C++的CPPUnit,在开始的时候NUnit和x ...

  7. springmvc的ModelMap,前台取值

    利用 ${user.id}或者‘${user.id}’都是可以直接获取到的,不过前提是在jsp页面的script脚本中,而在引用的js文件中是不可以使用的,因为${}是jsp的el标签. 利用 ${u ...

  8. 全文搜索引擎——Solr

    1.部署solr a.下载并解压Solr b.导入项目(独立项目): 将解压后的 server\solr-webapp 下的 webapp文件夹 拷贝到tomcat的webapps下,并重命名为 so ...

  9. chattr和lsattr的基本用法

    lsattr filename  查看一个文件的属性 chattr filename  改变一个文件的属性 主要用途:实现文件的原有内容不允许改变,但可以增加新行,则需通过改变文件的属性来实现. ch ...

  10. Linux 上使用LVM 扩展磁盘Size

    第一步:使用 fdisk -l 查看当前磁盘容量 fdisk -l 第二步: 使用 fdisk /dev/sda/ 为free space 添加新的分区 fdisk /dev/sda m :列出所有命 ...