我试图在nuxt
中用nuxt-apollo-module
发出一个智能请求,以便为nuxt-sitemaps-module
获取我的路径(这样我就可以用它们创建我的站点Map)。
我需要在nuxt.config.js
文件中进行此请求。我尝试过这种方法,但没有成功(因为app
在此上下文中不存在)。什么是正确的方法?提前感谢!
我的nuxt.config.js
的相关部分
import gql from 'graphql-tag'
module.exports = {
modules: [
'@nuxtjs/apollo',
'@nuxtjs/sitemap'
],
apollo: {
clientConfigs: {
default: {
httpEndpoint: 'https://example.com/graphql'
}
}
},
sitemap: {
path: '/sitemap.xml',
hostname: 'https://example.com/',
generate: true,
cacheTime: 86400,
trailingSlash: true,
routes: async ({ app }) => {
const myRoutes = ['/one-random-path/']
let client = app.apolloProvider.defaultClient
let myProductsQuery = gql`query {
products {
slug
}
}`
let myBrandsQuery = gql`query {
brands {
slug
}
}`
const myProducts = await client.query({ query: myProductsQuery })
const myBrands = await client.query({ query: myBrandsQuery })
return [myRoutes, ...myProducts, ...myBrands]
}
}
}
2条答案
按热度按时间lymgl2op1#
我可以用这种方式生成它,但我相信还有更好的方法。
第一个
6g8kf2rb2#
这就是我如何能够做到这一点与身份验证。得到了它的以下文档在这里有一个Vue的例子:https://www.apollographql.com/docs/react/networking/authentication/
如果你也可以使用auth,那么使用apollo-boost可能会是一种更干净的方式?