247

I'm trying to do something like this:

<div v-for="r in rentals">
  <a bind-href="'/job/'r.id"> {{ r.job_title }} </a>
</div>  

I can't figure out how to add the value of r.id to the end of the href attribute so that I can make an API call. Any suggestions?

Penny Liu
  • 15,447
  • 5
  • 79
  • 98
bbennett36
  • 6,065
  • 10
  • 20
  • 37

5 Answers5

521

You need to use v-bind: or its alias :. For example,

<a v-bind:href="'/job/'+ r.id">

or

<a :href="'/job/' + r.id">
Saurabh
  • 71,488
  • 40
  • 181
  • 244
asemahle
  • 20,235
  • 4
  • 40
  • 38
102

Or you can do that with ES6 template literal:

<a :href="`/job/${r.id}`"
Ardhi
  • 2,855
  • 1
  • 22
  • 31
6

You can concatenate your static value and dynamic value as string values, while binding href. Using your example:

<div v-for="r in rentals">
  <a :href="'/job/' + r.id"> {{ r.job_title }} </a>
</div>
2

If you want to display links coming from your state or store in Vue 2.0, you can do like this:

<a v-bind:href="''"> {{ url_link }} </a>
Penny Liu
  • 15,447
  • 5
  • 79
  • 98
1

This can also help.

<a target="_blank" :href="r.reg_metadato">{{ r.reg_metadato }}</a>
fcva
  • 379
  • 3
  • 8