Spotify SDK doesn't seem compatible with SharePoint framework anymore

Spotify SDK doesn't seem compatible with SharePoint framework anymore


We are a team of developers working on a product based on the SharePoint framework. The product we are working on has a couple of API integrations and one of them is Spotify's web player that is implemented using Spotify's Web SDK. A few months back our Spotify SDK-based web player was working fine however recently it has started encountering a serious issue when the page tries to load the SDK using the following CDN path ends up in an issue with the following stack trace.

spotify-player.js:18 Uncaught TypeError: r.__extends is not a function
at spotify-player.js:18
at Object.6.tslib (spotify-player.js:18)
at s (spotify-player.js:3)
at spotify-player.js:3
at Object.7.../enums/errors (spotify-player.js:18)
at s (spotify-player.js:3)
at e (spotify-player.js:3)
at spotify-player.js:3







Chrome Desktop browser

Operating System

Windows 10


My Question or Issue


1 Reply


I got this error too in Flutter Web, when using this:

I was able to work around it by downloading spotify-player.js in index.html:

<script src=""></script>
window.onSpotifyWebPlaybackSDKReady = (evt) => {


Internally, when calling a spotify_sdk function for the first time, it initializes the Spotify SDK by injecting an onSpotifyWebPlaybackSDKReady function and adding <script src=""></script> to the HTML.

Then, it waits until its injected onSpotifyWebPlaybackSDKReady function is called, and then sets an internal flag (_sdkLoaded) to indicate that the SDK has been initialized. Because of the JS error - onSpotifyWebPlaybackSDKReady is never called and spotify_sdk gets stuck in an infinite loop.

However, before spotify_sdk attempts to initialize the SDK, it checks to see if an onSpotifyWebPlaybackSDKReady function had already been installed. If it was - it skips the initialization and directly sets the "SDK loaded" flag.

So the above code seems to fix the issue, but it's important to not call spotify_sdk functions until the Spotify SDK is actually initialized (i.e. because spotify_sdk no longer takes care of that).

Suggested posts

Env: prod