2017-05-23 50 views
0

Screenshot of my vue components从laravel的vue组件获取细节

我有一个Laravel 5.4项目。

我已经创建了两个组件:Students.vue和Student.vue组件 Students.vue让所有的学生和Student.vue一个学生 的一个显示标记,这里是我Students.vue

<template> 

     <div v-if = "students.length && meta"> 


       <pages :pagination = "meta"></pages> 

       <div class = "col-lg-3 col-sm-6 col-md-4 music_genre" v-for = "student in students"> 

       <student :student = "student"></student> 

       </div> 

     </div> 

    </template> 

    <script> 

    import { mapActions, mapGetters } from 'vuex' 

    import eventHub from '../../events.js' 


     export default { 

      methods: { 

       ...mapActions({ 

        getStudents: 'student/getStudents' 
       }) 
      }, 

      computed : { 

       ...mapGetters ({ 

       students : 'student/students', 

       meta : 'student/meta' 
       }) 

      }, 

      mounted() { 

       this.getStudents(1) 
      } 
     } 
    </script> 

here is my Student.vue 

    <template> 
     <div class=""> 

      <div class="team-info "> 

       <h4> 
       <a href="#"> 

        {{student.name}} {{student.last_name}} 

       </a> 

       </h4> 

      <span class='team-member-edit'> 

       <a href="#"><i class='fa fa-pencil icon-xs'></i></a> 

      </span> 

      </div> 
      <p>Along with studies, is good in all around activities held in the university events.</p> 
     </div> 
    </template> 

    <script> 

     export default { 

      props:['student'], 


      mounted() { 


      } 
     } 
    </script> 

当我点击学生姓名时,我想显示学生的所有详细信息。如何实现这一

+0

你想要显示的信息在哪里?在新的组件中或在同一个student.vue组件中。 –

+0

我已经创建了一个新的组件StudentDetails.vue,但你建议我做什么? –

回答

0

我假设你有一个关键的区别每个学生,因此你可以做到这一点

'/students/:id': { 
    component: 'student' 
} 
+0

这将意味着我将使用Vue路由器。但我不知道应该放在哪里

+0

我想从学生组件接收道具并在学生组件上显示每个学生的详细信息。如何通过道具使用视图路由器 –

+0

你可以使用$发射通过事件总线https://vuejs.org/v2/guide/components.html – highFlyingDodo