Help articles
JS Client: Promise Polyfill
The Sanity JavaScript client uses Promises
to handle asyncronous requests. Some browsers (such as Internet Explorer) does not support this interface by default, and thus requires a so called polyfill for it to work.
There are many polyfills to choose from - we recommend something that comforms to the Promises/A+ specification, such as the es6-promise module. The readme for that module includes various ways to use it - the most important thing to note is that you should make sure the polyfill is applied before the Sanity client is instantiated.
Here's an example if you are using a bundler such as webpack, browserify or parcel:
require('es6-promise/auto') const sanityClient = require('@sanity/client') module.exports = sanityClient({ projectId: '...', dataset: '...', useCdn: true })
(Make sure es6-promise is added as a dependency for your project.)
Was this page helpful?