Comments (5)
I am struggling with the same problem. I am trying to get a GraphQL query inside a template to read the intl.language
value set in the context by gatsby-plugin-intl
, so that the query can pass the current language code to the CMS.
I would like to be able to say something like:
export const query = graphql`
query GenericPageQuery($slug: String!, $intl: Object!) {
contentfulGenericPage(slug: { eq: $slug }, node_locale: { eq: $intl.language }) {
slug
...
}
}
`
This is however not valid GraphQL. There is no type Object
for the $intl
variable, and furthermore the dot access in $intl.language
also causes an error.
What is the correct way of doing this?
from gatsby-plugin-intl.
Honestly I clone this project and pass the language property of intl as a string to been able to use it. but there most be a better way to do this.
from gatsby-plugin-intl.
+1
from gatsby-plugin-intl.
I managed to use the locale in page queries by adding it manually to the context in gatsby-node.js
like so
exports.onCreatePage = ({ page, actions }) => {
const { createPage, deletePage } = actions
const { language } = page.context.intl
deletePage(page)
createPage({
...page,
context: {
...page.context,
language,
},
})
}
...this allows me to then use language
in page queries like so e.g.
query MyQuery($language: String) {
allQuotes(filter: { locale: { eq: $language } } ) {
content
}
}
Edit: ...just saw the last comment from @fabianrios suggesting exactly that.
from gatsby-plugin-intl.
solved in #96
from gatsby-plugin-intl.
Related Issues (20)
- Updated json needs clear cache in order to show changes on the page HOT 2
- Sitemap problems HOT 4
- redirect option creates problems with routers HOT 1
- Getting Error: Cannot find react-intl/locale-data/hk in Safari HOT 1
- Updating locales requires cleaning .cache HOT 2
- Distinguish between default display/redirect language and default messages language
- Is this project abandoned? HOT 8
- Fork and link this repo? HOT 1
- Styling a specific language HOT 1
- gatsby-plugin-intl is not compatible with your gatsby version 3 HOT 2
- How to use with Storybook? HOT 3
- Problem when using gatsby-plugin-transition-link and gatsby-plugin-intl. HOT 1
- Best practice for translate keywords ( react helmet ) & alt image description HOT 1
- ngeLoc
- Load component inside `wrapPageElement` fails HOT 1
- Is this plugin going to be updated to supported gatsby version 4.x.x? HOT 7
- Dynamic translation keys from json are not extracted
- How do I use this together with slices? HOT 1
- Wrong import of @formatjs locale-data
- All locale data included in bundle
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gatsby-plugin-intl.