使用vue.js获取调用元素

lan*_*der 10 html javascript jquery vue.js

我想在vue.js中调用html元素来通过jQuery修改它.现在我给每个元素提供类名+索引,然后通过jQuery调用它,但这看起来像是一个疯狂的黑客.

我想做的事:

new Vue({
    el: "#app",
    data: {  
        testFunction : function(element) {
            $(element).doSomethingWithIt(); //do something with the calling element
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

这是调用元素:

<div v-on:click="testFunction(???)">Test</div> 
Run Code Online (Sandbox Code Playgroud)

我可以将什么传递给函数来获取div元素,还是有另一种方法来实现这个目的?

Pan*_*lis 10

您可以从事件中获取元素,如下所示:

new Vue({
    el: "#app",
    methods: {  
        testFunction : function(event) {
            $(event.target).doSomethingWithIt();
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

然后:

<div v-on:click="testFunction">Test</div>
Run Code Online (Sandbox Code Playgroud)

或者(如果你想传递另一个参数):

<div v-on:click="testFunction($event)">Test</div>
Run Code Online (Sandbox Code Playgroud)

[试玩]

  • 如果你有另一个元素怎么办?如果单击它,目标将引用子元素. (9认同)