vue-apollo: запросы GraphQL выполняются только при использовании тегов <ApolloQuery>.Никогда не работает в коде скрипта.this. $ apollo.queries пусто - PullRequest
0 голосов
/ 06 февраля 2019

Я знаю, что, возможно, мне здесь не хватает чего-то сверхосновного, я пытаюсь запустить запрос graphql с помощью vue-apollo ... если я использую теги, он отлично работает

Если я пытаюсьЗапускайте запросы из моего кода, как в основных примерах в документации (ссылки ниже), тогда ничего не происходит.Сервер никогда не получает никаких запросов, и это. $ Apollo.queries пусто.)

Основные примеры из документов:

Я определил запрос в свойстве / объекте apollo.Как на самом деле выполнить его, когда страница загружается?Обратите внимание, что я использую машинопись, поэтому он использует метод "get apollo()".

Вот мой код ...

<script lang="ts">
  import { Component, Vue } from 'vue-property-decorator'

  export default class List extends Vue {

    myQueryName='my default value';

    get apollo() {
      return {
        myQueryName: {
          query: require('../graphql/listMeta.graphql'),
          // prefetch: true <-- tried with and without this
        }
      }
    }

  }
</script>

<template>
  <div>

    <!-- THIS DOESN"T WORK ... -->
    queries are: {{this.$apollo.queries}} <!-- THIS JUST SHOWS AN EMPTY OBJECT: {} -->
    <hr>
    myQueryName value is: {{myQueryName}} <!-- THIS JUST SHOWS "my default value"  -->

    <hr>
    <!--
    THIS DOES WORK...
    <ApolloQuery :query="this.apollo.myQueryName.query" >
      <template slot-scope="{ result: { loading, error, data } }"></template>
    </ApolloQuery>
    -->
  </div>
</template>

Обратите внимание, что это. $ Apollo.queriesв шаблоне пусто, вероятно, подсказка ... но до сих пор не знаю, почему он пуст.Из документов и примеров, которые я видел, он должен быть заполнен из моего get apollo метода данных.

Выглядит в основном так же, как https://github.com/OniVe/vue-apollo-typescript-example/blob/master/pages/index.vue, насколько я могу судить, я не знаюкакая разница.

Я пытался пересоздать проект с нуля несколько раз (с nuxt и без него), в течение месяцев и множества разных версий vue / nuxt / apollo / vue-apollo ... запросы никогда не запускались(из памяти), если я не использую теги.

Чего мне не хватает?

...