所以我有一个Vue2应用程序。我已经创建了一个html" target="_blank">组件"u按钮"
当我导入它并在另一个组件中使用它时,我希望能够向它添加一个单击功能。然而,目前它在u按钮组件上寻找函数,而不是它正在使用的组件。
例如,在下面,如果我点击第一个按钮什么也没发生,如果我点击第二个按钮,我得到控制台日志。
<template>
<div>
<u_button @click="clicked">Click me</u_button>
<button @click="clicked">Click me</button>
</div>
</template>
<script>
import u_button from '../components/unify/u_button'
export default {
components: {
u_button
},
methods: {
clicked() {
console.log("Working!");
}
}
}
</script>
但是,如果我在u按钮组件上添加一个方法,那么它将调用该方法。那么,我怎样才能让我下面的例子起作用呢?我唯一能想到的就是将它包装到另一个div中,并将click函数添加到该div中。但我想知道是否有更好的方法??我也不想用事件来做这件事,因为它很快就会变得一团糟。
你可以想象有一个可重复使用的按钮,当点击时总是执行相同的功能有点毫无意义。
这是因为组件的性质,例如,如果我们有一个(虚拟的)iframe组件,其中有一个按钮,我们想检测上面的点击事件,我们可能会将事件命名为点击并在父组件中监听;因此,Vue引入了一个名为事件修饰符的功能,例如在Vue中,我们有.本地
修饰符(您可以在这里阅读更多关于Vue修饰符的信息)
现在,要使代码正常工作,您应该在@单击后添加
.native
,如下所示:
<u_button @click.native="clicked">Click me</u_button>
顺便说一句,最好为自己制定一个命名约定,当您的项目变得更大时,它会变得更方便。
问题内容: ng-model上的角ng-change传递给子指令 基本上,我希望能够将ng-model从父指令传递给子指令。我只能使用2向绑定值,但是这样我将无法在child元素的parent指令中使用ng- change。我也可以使用ng-click,但这不适用于非单击式更改(例如,文本区域而不是复选框)。所以我想知道是否有一种方法可以使自定义指令具有ng- model / ng- change
我对react很陌生(我只使用过abit类),我想把输入值添加到并在屏幕上写出来,但我的大脑被锁住了,我不知道如何...
问题内容: 我一直在寻找如何执行此操作,但到目前为止我还没有找到任何相关的东西,:(我可以嵌套两个函数,但是我只是想知道这是否可行吗? 目前我的JS代码: 我想一键调用两个函数,如何在angularJS中做到这一点?我认为当您添加多个类时会像在CSS中那样直接…但是不是:( 问题答案: 您有2个选择: 创建包装这两个方法的第三个方法。这样做的好处是可以减少模板中的逻辑。 否则,如果要在ng-cli
问题内容: 我想在JDialog中添加诸如TextField,Button等组件。 问题答案: 1)首先创建一个Jpanel 2)将组件添加到该JPanel 3)创建JDialog 4)将JPanel添加到JDialog
我尝试将操作"addProducts"添加到组件中。但是当我点击它时,我看到一个错误,请帮我处理,提前感谢! 我不明白我的错误在哪里(
问题内容: 我是React的新手,对某种基本的东西感到困惑。 我需要在单击事件后呈现DOM之后将组件添加到DOM。 我最初的尝试如下,但是没有用。但这是我想尝试的最好的方法。(预先为将jQuery与React混合使用而道歉。) 希望我已经清楚需要做什么,希望您能帮助我获得适当的解决方案。 问题答案: 正如@Alex McMillan所提到的那样,使用state来指示应在dom中呈现的内容。 在下面