【问题标题】:Vue.js why does the "updateXY" function gets called with "event" as parameter?Vue.js 为什么用“event”作为参数调用“updateXY”函数?
【发布时间】:2019-03-11 16:12:16
【问题描述】:

所以最近开始学习Vue.js框架,发现了一个代码sn-p。我不知道为什么 "updateXY" 函数会以 "event" 作为参数调用,即使它没有指定。

index.html

<div id="vue-app">
    <div id="canvas" v-on:mousemove="updateXY">
      ({{ x }}, {{ y }}) 
    </div>
</div>

app.js

new Vue({
el: "#vue-app",
data: {
    x: 0,
    y: 0
},
methods: {
  updateXY: function (event) {
    console.log(event);
  }
}

});

【问题讨论】:

    标签: javascript vue.js frontend


    【解决方案1】:

    您正在指定事件要调用的函数。

    事件的发射器决定传递什么(以及多少)参数。

    您的函数参数声明是您访问传递的参数的一种方式,而不是一种限制访问调用函数的方式。

    JS 中的函数可以使用任意数量的参数调用,与声明无关。它们都可以通过arguments 变量访问。

    【讨论】:

      【解决方案2】:

      有时在事件处理函数中,您可能会看到一个指定名称的参数,例如 event、evt 或简单的 e。这称为事件对象,它会自动传递给事件处理程序以提供额外的功能和信息。

      请参考event handlers文档

      【讨论】:

        猜你喜欢
        • 2016-12-05
        • 2015-08-04
        • 2017-05-29
        • 1970-01-01
        • 1970-01-01
        • 2017-12-25
        • 1970-01-01
        • 1970-01-01
        • 2010-12-10
        相关资源
        最近更新 更多