@@ -31,7 +31,7 @@
.fixed-width {
.el-button--mini {
padding: 7px 10px;
- min-width: 60px;
+ width: 60px;
}
@@ -1,7 +1,5 @@
-
<template>
- <!-- eslint-disable vue/require-component-is -->
- <component v-bind="linkProps(to)">
+ <component :is="type" v-bind="linkProps(to)">
<slot />
</component>
</template>
@@ -16,19 +14,28 @@ export default {
required: true
},
+ computed: {
+ isExternal() {
+ return isExternal(this.to)
+ },
+ type() {
+ if (this.isExternal) {
+ return 'a'
+ }
+ return 'router-link'
methods: {
- linkProps(url) {
- if (isExternal(url)) {
+ linkProps(to) {
return {
- is: 'a',
- href: url,
+ href: to,
target: '_blank',
rel: 'noopener'
- is: 'router-link',
- to: url
+ to: to