Wenn Sie auf das Div klicken, springen Sie zur Vue-Methode der in den Daten definierten URL
P粉426780515
P粉426780515 2023-10-23 15:46:15
0
2
634

Ich habe diese Art von Objekt in meinem Array:

{
  name: 'name1',
  url: 'http://url-1.tld'
},
{
  name: 'name2',
  url: 'http://url-2.tld'
}

Wenn auf das Div geklickt wird, möchte ich window.location.href auf url verweisen, aber ich kann die URL scheinbar nicht aus den Daten in meine Methode übernehmen.

<div v-for="person in persons" v-on:click="select($event)"></div>

select: function(event) {
  window.location.href( ??? )
}

Hat jemand Vorschläge?

P粉426780515
P粉426780515

Antworte allen(2)
P粉399090746

接受的答案有效,但会刷新页面。在 SPA 框架中,我们尽量避免刷新页面,因此正确答案是:

Vue:this.$router.push(person.url)

Nuxt:this.$router.push({ name: 'routename' })

P粉086993788

您需要将 person 作为参数传递给 select,而不是 $event

<div v-for="person in persons" v-on:click="select(person)"></div>

select: function(person) {
  window.location.href = person.url;
}
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage