同样,首先我们还是回顾一下昨天讲到的东西:

1.常用的Vue修饰器

2.当利用js方法不修改数据,但也可以改变视图时,我们需要整体返回再整体接收

(如: items.example1 = items.example1.filter(function(){}))

3.当我们不能直接对数组进行修改的时候,我们通常要么利用vue内置set(),要么利用整体接收来修改

4.对数组中的数据进行过滤和排序,可以用computed也可以用methods

下面我们开始今天的内容:::

事件和事件的方法:
 
<div id = example2>
    <button v-on:click="greet">greet</botton>
</div>
 
var example-2 = new Vue({
    el: ' #example ',
    data : {
        admin : ' vue.js '
}
 
    method : { 
        greet : function ( event ){
 
            alert ( ' Hello ' + this.name + ' ! ' )
                //this在这里值vm对象
            alert(' event.target.tagName ')
                //event在这里指js原生对象
}
 }
})
//这个方法可以在外部用javascript:;的方法调用
example2.greet()   // -> " hello vue.js "
 
 
同时,我们也可以直接写表达式处理
 
<div id = " example-2 ">
    <button v-on:click = "contain + = 1 ">add 1</button>
    <p>{{ contain }}</p>
</div>
 
el:' #example-2 ',
data : {
    contain : .0
}
 
也可以用传参的方法来处理
 
<div id = "example-2">
    <button v-on:click= " look( 'beauti girl' ) "></button>
    <button v-on:click= " look ( ' sex girl ' ) "></button>
</div>
 
var example2 = new Vue({
    el: ' #example2 ',
    data{  }
    methods : {
        look function ( message ){
            alert( message )
}
}
})
 
我们可以总结一下,就是,如果 v-on:click=""后面跟的方法名如果带括号,那它就是js表达式
 
如果不带括号,那它就是vue方法名,从我们第一个例子可以看到,当后面跟的东西没带括号的时候
 
会有一个event,这是vue内置的默认event,就算它没有传入什么值
 
但是如果是这种情况,也就是带括号的情况,如果括号里没有参数,那么也就获取不到event,如下:
<button v-on:click=" dream( 'I just wanna to run ', $event  )"> dream </button>
 
methods : {
    dream : function( message , event ){
        if ( event ) { 
            event.preventDefault()
                alert ( message )
 } 
}
 
这里就需要传参才可以~
 
 
 
下面我们讲一下事件修饰器:::
 
// 阻止点击事件的冒泡行为 
<a v-on:click.stop="doThis"></a>
// 阻止默认的表单提交
<form v-on:submit.prevent="onSubmit"></form>
// 事件修饰器可以连用 
<a v-on:click.stop.prevent="doThat">
// 只需要修饰器,而无需处理方法 
<form v-on:submit.prevent></form>
// 使用 capture 模式
<div v-on:click.capture="doThis">...</div>
// 仅当event.target是自身的时候才执行 
// 比如,这样写了之后点击子元素就不会执行后续逻辑
<div v-on:click.self="doThat">...</div>

今天的内容稍稍有点少~~打了个电话有点久~~~请朋友们见谅;之后尽量早点开始总结输出~~明天见,goodnight~

Vue学习之路---No.5(分享心得,欢迎批评指正)的更多相关文章

  1. vue学习之路 - 4.基本操作(下)

    vue学习之路 - 4.基本操作(下) 简述:本章节主要介绍 vue 的一些其他常用指令. Vue 指令 这里将 vue 的指令分为系统内部指令(vue 自带指令)和用户自定义指令两种. 系统内部指令 ...

  2. Vue学习之路之登录注册实例代码

    Vue学习之路之登录注册实例代码:https://www.jb51.net/article/118003.htm vue项目中路由验证和相应拦截的使用:https://blog.csdn.net/wa ...

  3. Vue学习之路---No.4(分享心得,欢迎批评指正)

    这里说声抱歉,周末因为有其他事,没有更新博客,那么我们今天继续上周5的说. 老规矩,先回顾一下上一次的重点: 1.利用V-if和v-else来提到show()和hide(),同时要记住,v-else一 ...

  4. JAVA学习之路与大家分享

    这是我四年以前总结的JAVA学习之路,希望对初学者或想从事JAVA开发的人有帮助. 本人是软件工程专业出身,先后学过C.C++.JAVA.VB.delphi等等开发语言以及网络相关管理技术.哎,好久不 ...

  5. Vue学习之路第一篇(学习准备)

    1.开发工具的选择 这个和个人的开发习惯有关,并不做强求,厉害的话用记事本也可以.但是我还是建议用人气比较高的编辑工具,毕竟功能比较全面,开发起来效率比较高. 我之前写前端一直用的是sublimete ...

  6. Vue学习之路---No.2(分享心得,欢迎批评指正)

    昨天我们大致了解了有关Vue的基础知识和语法:今天我们继续在大V这条路上前进. 首先,我们回忆一下昨天提到的相关知识点: 1.了解Vue的核心理念------"数据驱动视图" 2. ...

  7. Vue学习之路---No.6(分享心得,欢迎批评指正)

    我们还是先回顾一下上一次的重点: 1.事件绑定,我们可以对分别用方法和js表达式对事件进行处理 2.当方法名带括号的时候,在方法中一定要传参:而不带括号的时候,vm会自动配置默认event 3.各类事 ...

  8. Vue学习之路---No.7(分享心得,欢迎批评指正)

    老规矩,先回顾一下上回的重点: 1.对于input框,若为单选框,如果没有对其设置value,那么其checked的值将在true Or false之间切换:如果设置了value,那么将会切换valu ...

  9. Vue学习之路---No.3(分享心得,欢迎批评指正)

    同样的,我们先来回顾一下昨天学习的内容: 1.利用v-once来组织双向绑定 2.filter{}过滤器的使用(详情请看上一章) 3.computed(计算属性),利用computed属性实现filt ...

  10. Vue学习之路---No.1(分享心得,欢迎批评指正)

    首先为了打消大家对Vue.js存在的顾虑,先通过大家所熟知的JQ作为对比. 都知道JQ的语法相对简单.清楚.使用方便.功能齐全: 那么Vue.js呢,同样的,Vue.js与JQ在很多地方都是相同之处, ...

随机推荐

  1. javascript 简单工厂

    function detail() { this.imgArr = []; this.codeArr = []; } detail.prototype.addimg = function(img) { ...

  2. lufylegend库 LBitmapData LBitmap LSprite

    lufylegend库 LBitmapData LBitmap LSprite <!DOCTYPE html> <html lang="en"> <h ...

  3. Angularjs^1.2.9 搜索关键字高亮显示

    需求分析: 根据关键字搜索网页内容,并且高亮显示内容中的关键字细节分析: 1.每次执行搜索操作,需清空上一次结果 2.需区分html标签和正常文本内容,否则为关键字添加样式以后会出现标签内容被显示的情 ...

  4. SQL SERVER 运维日记-数据库备份

    概述 昨天下午突然看到,<炉石传说>游戏数据库发生宕机并引发数据丢失事故的新闻.刚看到时,满满的不可思议.暴雪啊,网易啊. 都是很牛叉的公司.他们出的游戏我都是很喜欢的. 当我看到,第一时 ...

  5. RabbitMQ安装和使用(和Spring集成)

    一.安装Rabbit MQ Rabbit MQ 是建立在强大的Erlang OTP平台上,因此安装Rabbit MQ的前提是安装Erlang.通过下面两个连接下载安装3.2.3 版本: 下载并安装 E ...

  6. C# OpenFileDialog 使用

    OpenFileDialog ofd = new OpenFileDialog(); //设置标题 ofd.Title = "选择文件"; //是否保存上次打开文件的位置 ofd. ...

  7. 《解决在Word中为汉子插入拼音及音标的问题》

    说明:本人使用的是Word2007版本.以下示例都是基于本人电脑操作.如有疑问,欢迎留言交流. [1]为word中的一些文字添加拼音及音标. [2]开始为文字添加拼音及音标. 选中要添加拼音及音标的文 ...

  8. CocoaPods 2016最新安装和使用说明

    cocoapods 简介: CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所 ...

  9. Vuex 模块化与项目实例 (2.0)

    Vuex 强调使用单一状态树,即在一个项目里只有一个 store,这个 store 集中管理了项目中所有的数据以及对数据的操作行为.但是这样带来的问题是 store 可能会非常臃肿庞大不易维护,所以就 ...

  10. javascript组件的基本结构

    (function(window, undefined) { function JsClassName(cfg) { var config = cfg || {}; this.get = functi ...