我正在尝试将登录按钮作为Vue.js中的单个文件组件(这是具有Vue.js前端的Rails应用)。如果您单击此按钮,则应该将您带到外部提供商的登录页面。
如何将图像用作按钮?我猜测您使用v-on:click
进行实际的重定向,但是我被困在那里。
现在,下面的代码显示了一个类似于img(src="../assets/img/login_button.png")
的硬编码按钮。您可以单击它,但这显然不是我想要的。我想显示实际的png图像,而不是路径。
// LoginButton.vue
<template lang="pug">
#login-button
<button v-on:click="redirect_to_login">img(src="../assets/img/login_button.png")</button>
</template>
<script lang="ts">
import { Vue, Component } from 'vue-property-decorator';
@Component
export default class LoginButton extends Vue{
redirect_to_login():void{ // I haven't written this method yet
}
}
</script>
答案 0 :(得分:1)
我对pug不熟悉,所以我不知道您需要什么正确的语法。但是您可以使用<router-link>
标签来设置路线。例如(使用Vuetify)
<router-link to="/">
<v-img src="/path/to/img.gif"/>
</router-link>
答案 1 :(得分:0)
有什么原因不能只在按钮内使用普通的HTML图像吗?我以前没用过哈巴狗。
<button v-on:click="redirect_to_login"><img src="../assets/img/login_button.png" /></button
尽管由于您使用的是Vue而不是实际的HTML表单,所以您可能甚至不需要按钮,而只需将点击绑定添加到图像中即可
<img src="../assets/img/login_button.png" v-on:click="redirect_to_login" />
答案 2 :(得分:0)
您可以使用:
<a @click="Redirect">
<img src='IMAGE_SRC' />
</a>
或
<img @click="Redirect" src='IMAGE_SRC'/>
new Vue({
el: '#app',
methods:
{
Redirect()
{
window.location.href = "https://jsfiddle.net/";
//or
//this.$router.push('LINK_HERE'); // if ur using router
}
}
})
演示链接: