|
Lines 10-16
Link Here
|
| 10 |
</router-link> |
10 |
</router-link> |
| 11 |
<a |
11 |
<a |
| 12 |
v-else-if="linkData && linkData.href" |
12 |
v-else-if="linkData && linkData.href" |
| 13 |
:href="linkData.href" |
13 |
:href="formattedHref" |
| 14 |
:class="{ disabled: linkData.disabled }" |
14 |
:class="{ disabled: linkData.disabled }" |
| 15 |
> |
15 |
> |
| 16 |
<slot /> |
16 |
<slot /> |
|
Lines 26-31
export default {
Link Here
|
| 26 |
resource: Object, |
26 |
resource: Object, |
| 27 |
}, |
27 |
}, |
| 28 |
setup(props) { |
28 |
setup(props) { |
|
|
29 |
const formattedHref = ref(props.linkData?.href); |
| 29 |
const formattedParams = ref({}); |
30 |
const formattedParams = ref({}); |
| 30 |
|
31 |
|
| 31 |
if (props.linkData && props.linkData.params) { |
32 |
if (props.linkData && props.linkData.params) { |
|
Lines 36-51
export default {
Link Here
|
| 36 |
} |
37 |
} |
| 37 |
|
38 |
|
| 38 |
if (props.linkData?.href && props.linkData.params) { |
39 |
if (props.linkData?.href && props.linkData.params) { |
| 39 |
props.linkData.href += "?"; |
40 |
formattedHref.value += "?"; |
| 40 |
Object.keys(props.linkData.params).forEach(key => { |
41 |
Object.keys(props.linkData.params).forEach(key => { |
| 41 |
props.linkData.href += `${key}=${formattedParams.value[key]}&`; |
42 |
formattedHref.value += `${key}=${formattedParams.value[key]}&`; |
| 42 |
}); |
43 |
}); |
| 43 |
props.linkData.href = props.linkData.href.slice(0, -1); |
44 |
formattedHref.value = formattedHref.value.slice(0, -1); |
| 44 |
} |
45 |
} |
| 45 |
if (props.linkData?.href && props.linkData.slug) { |
46 |
if (props.linkData?.href && props.linkData.slug) { |
| 46 |
props.linkData.href += `/${props.resource[props.linkData.slug]}`; |
47 |
formattedHref.value += `/${props.resource[props.linkData.slug]}`; |
| 47 |
} |
48 |
} |
| 48 |
return { |
49 |
return { |
|
|
50 |
formattedHref, |
| 49 |
formattedParams, |
51 |
formattedParams, |
| 50 |
}; |
52 |
}; |
| 51 |
}, |
53 |
}, |
| 52 |
- |
|
|