J'ai essayé d'accéder à mon paramètre : id dans mon Entry composant. Je l'ai essayé avec des accessoires mais cela ne fonctionne pas. Une idée? Je ne trouve rien.
export default new Router({
routes: [{
path: '/entry/:id',
name: 'Entry',
component: Entry
}]
})
Merci
Bien que la réponse de soju soit correcte, j'ai tendance à utiliser la méthode dans laquelle les documents se réfèrent à "découpler le routeur à l'aide d'accessoires".
Cela peut être accompli en ajoutant l'option props: true à votre itinéraire et en définissant une propriété dans votre composant.
Ainsi, dans votre itinéraire, vous auriez:
export default new Router({
routes: [{
path: '/entry/:id',
name: 'Entry',
component: Entry,
props: true
}]
})
Ensuite, dans votre composant, vous ajoutez un accessoire:
Vue.component('Entry', {
template: '<div>ID: {{ id}}</div>',
props:['id']
})
Tout cela peut être trouvé dans les documents: Passing Props to Route Components
Vous devez simplement utiliser $route.params.id
ou this.$route.params.id
.
En savoir plus: https://router.vuejs.org/guide/essentials/dynamic-matching.html
Vous devriez envisager d'utiliser des accessoires: https://router.vuejs.org/en/essentials/passing-props.html
vous pouvez utiliser dans le composant
this.$route.params.id
Avec en html <div>{{$route.params.id}}</div>
Avec dans le script this.$route.params.id
<template>
<div>
<p>{{id}}</p>
</div>
</template>
<script>
export default {
data() {
return {
id:this.$route.params.id
}
},
}
</script>