Vue.js Пропущенные реквизиты не определены в любой области - PullRequest
0 голосов
/ 14 ноября 2018

Я делаю одностраничный стиль написания приложений, чтобы создать приложение с помощью vue.Однако данные реквизита, переданные дочернему компоненту, не загружаются ни в какую область (созданный (), смонтированный () и т. Д.).

router / index.js

import Vue from 'vue'
import Router from 'vue-router'
import Ques from '@/components/timeline/Ques'
import Timeline from '@/components/Timeline'

Vue.use(Router);


export default new Router({
 mode: 'history',
 routes: [
   {
     path: '/feeds',
     name: 'Timeline',
     component: Timeline
   },
   {
     path: '/ques',
     name: 'Ques',
     component: Ques
    }
   ]
   })

timeline.vue

    <template>
    <main class="timeline_wrapper">
    <Ques :timelinePosts="posts"></Ques>
    </main>

    </template>

  <script>
    import Ques from './timeline/Ques.vue'
    export default {
    name: "timeline",
    data() {
      return {
        posts: [
          {
            id: 0,
            name: 'hi'
          },
        ]
      }
     },
   components: { Ques }
   }
</script>

Ques.vue

<template>
</template>

<script>
   export default {
     name: "Ques",
     props: [
     'timelinePosts'
     ],
   created () {
     console.log(this.timelinePosts);
   }
  }
</script>

то, что следует за console.log, является ошибкой, сообщающей, что timelinePosts 'неопределен'.Как правильно загрузить значение prop в дочерний компонент?

Ответы [ 2 ]

0 голосов
/ 14 ноября 2018

Я думаю, это потому, что вы определили Ques в вашем маршрутизаторе, а у него нет props: true.И я также думаю, что если вы не собираетесь использовать его из <router-link>, вы должны удалить его

0 голосов
/ 14 ноября 2018

Я думаю, что название вашей собственности неверно. Просто измените timeline.vue :timelinePosts="posts" на :timeline-posts="posts"

Имена атрибутов HTML не чувствительны к регистру. Любой заглавный символ будет интерпретирован как строчный. Поэтому имена верблюдов в верблюжьих ножах должны использовать их эквиваленты в кебабах.

...