使用graphQL

时间:2019-10-02 19:38:58

标签: graphql nuxt.js apollo nuxt

在nuxtconfig.js中,您可以使用 生成:{route(){}}

返回您应用的所有动态路由。

所有示例均使用axios,即:

import axios from 'axios'

export default {
  generate: {
    routes: function () {
      return axios.get('https://my-api/users')
      .then((res) => {
        return res.data.map((user) => {
          return {
            route: '/users/' + user.id,
            payload: user
          }
        })
      })
    }
  }
}

我如何用graphQL / apollo做到这一点?

我已经尝试过这个和其他一些组合...

let v
  apollo: {
    posts: {
      query: gql`
        query posts {
          posts {
            title
          }
        }
      `,
      result({ data, loading, networkStatus }) {
        v = data
      }
    }
  },

  generate: {
    subFolders: true,
    routes: function() {
      return {
        route: '/posts/' + v.title,
        payload: v
      }
    }
  },

错误是我认为apollo不能在nuxtconfig中使用?

这也不起作用

  generate: {
    routes: function() {
      apollo: {
        posts: {
         query:`query posts {
           posts {
            title
          }
        }
      `,
      result({ data, loading, networkStatus }) {
       return {
        route: '/posts/' + data.title,
        payload: data
       }
      }
    }
  },

    }
  },

0 个答案:

没有答案