如何添加或删除按钮属性

时间:2020-04-25 12:41:58

标签: javascript vue.js vue-component

假设我的Vue.js模板中有一个简单的按钮,它会调用如下方法:

<q-btn label="login" @click="signIn" />

方法完成后,我希望将按钮更改为此:

<q-btn label="Bob" to="/settings" />

问题在于,不可能在一个按钮中结合使用@clickto指令。

在这种情况下,最好使用v-if="signedIn"来触发两个不同的按钮(如果未登录则显示button a,否则显示button b)?还是可以删除@click事件处理程序并将其替换为to

首选的处理方式是什么?

1 个答案:

答案 0 :(得分:2)

我建议您使用v-if,因为Vue会认识到它是同一元素,并且只会替换使用这些道具/侦听器的属性和组件的片段。

您可以通过使用v-bind和v-on动态绑定道具和侦听器来自行完成此操作。但这在这种情况下是没有意义的。

这种情况在这里描述:https://vuejs.org/v2/guide/conditional.html#Controlling-Reusable-Elements-with-key