2017-10-17 6 views
1

Mon composant vue comme ceci:Comment ajouter une condition dans le composant href on vue?

<template> 
    <ul class="nav nav-tabs nav-tabs-bg"> 
     <li role="presentation"> 
      <a :href="baseUrl+'/search/store/'+param"> 
       Store 
      </a> 
     </li> 
    </ul> 
</template> 

<script> 
    export default { 
     props: ['type', 'param'], 
    } 
</script> 

Je veux ajouter la condition dans href

Si type = 'a' alors href =

<a :href="baseUrl+'/search/store/'+param">Store</a> 

Si type = 'b' puis href =

<a href="javascript:">Store</a> 

Comment puis-je le faire?

Répondre

3

Une autre option est de créer propriété calculée:

<script> 
    export default { 
     props: ['type', 'param'], 
     computed: { 
      url() { 
      return this.type === 'a' 
       ? `${this.baseUrl}/search/store/${this.param}` 
       : 'javascript:' 
      } 
     } 
    } 
</script> 

et le temple sera:

<a :href="url">Store</a> 
1

Les opérateurs ternaires peuvent être bons pour cela. Par exemple:

<a :href="type == 'a' ? baseUrl+'/search/store/'+param : 'javascript:'">Store</a> 

Vous pouvez également utiliser v-if:

<a v-if="type == 'a'" :href="baseUrl+'/search/store/'+param">Store</a> 
<a v-else-if="type == 'b'" :href="'javascript:'">Store</a>