Я пытаюсь получить результаты из базы данных в News.vue и отобразить их в Topnews.vue.У меня две ссылки получены.Когда я нажимаю ссылку1, он показывает шаблон Topnews.vue, где все работает, как задумано, однако, если я нажимаю ссылку2, ничего не происходит, за исключением того, что URL-адрес изменяется, но шаблон не показывает результат.Если я обновляю страницу и нажимаю ссылку2 или нажимаю на панель навигации, то появляется ссылка2, и то же самое, нажимая затем ссылку1, изменяет URL-адрес, но не отображается.Я действительно застрял в этом, и я был бы очень рад, если бы вы помогли мне в этом вопросе.Надеюсь, вы понимаете.
News.vue
<template id="news">
<div class="col-sm-5">
<div class="cars" v-for="row in filteredNews" >
<div class="name" >
<p class="desc_top_time">{{row.created_at}}</p>
<span class="last_p"> {{row.category}}</span>
<h3 style="margin-bottom:-4px; font-size: 16px;">
<router-link class="btn btn-primary" v-bind:to="{name: 'Topnews', params: {id: row.id} }">{{row.title}}</router-link></h3>
</div></div></div>
</template>
<script>
export default {
data: function() {
return {
news: [],
}
},
created: function() {
let uri = '/news';
Axios.get(uri).then((response) => {
this.news = response.data;
});
},
computed: {
filteredNews: function() {
if (this.news.length) {
return this.news;
}
}
}
}
</script>
Topnews.vue
<template id="topnews1">
<div class="col-sm-7">
<div class="cars">
<img :src="topnews.thumb" class="img-responsive" width=100%/>
<div class="name" ><h3>{{ topnews.title }}</h3>
<p>
<br>{{ topnews.info }}<br/>
</p>
</div></div></div>
</template>
<script>
export default {
data:function(){
return {topnews: {title: '', thumb: '', info: ''}}
},
created:function() {
let uri = '/news/'+this.$route.params.id;
Axios.get(uri).then((response) => {
this.topnews = response.data;
});
}
}
</script>