File tree Expand file tree Collapse file tree 4 files changed +10
-2
lines changed Expand file tree Collapse file tree 4 files changed +10
-2
lines changed Original file line number Diff line number Diff line change 39
39
var googleVersion = opts . version || '3.31' ;
40
40
41
41
var script = null ;
42
- var google = window . google || null ;
42
+ var google = typeof window !== 'undefined' && window . google || null ;
43
43
var loading = false ;
44
44
var channel = null ;
45
45
var language = opts . language ;
Original file line number Diff line number Diff line change 51
51
52
52
Cache . _scriptTag = function ( key , src ) {
53
53
if ( ! scriptMap . has ( key ) ) {
54
+ // Server side rendering environments don't always have access to the `document` global.
55
+ // In these cases, we're not going to be able to return a script tag, so just return null.
56
+ if ( typeof document === 'undefined' ) return null ;
57
+
54
58
var tag = document . createElement ( 'script' ) ;
55
59
var promise = new Promise ( function ( resolve , reject ) {
56
60
var resolved = false ,
Original file line number Diff line number Diff line change @@ -16,7 +16,7 @@ export const GoogleApi = function(opts) {
16
16
const googleVersion = opts . version || '3.31' ;
17
17
18
18
let script = null ;
19
- let google = window . google || null ;
19
+ let google = typeof window !== 'undefined' && window . google || null ;
20
20
let loading = false ;
21
21
let channel = null ;
22
22
let language = opts . language ;
Original file line number Diff line number Diff line change @@ -35,6 +35,10 @@ export const ScriptCache = (function(global) {
35
35
36
36
Cache . _scriptTag = ( key , src ) => {
37
37
if ( ! scriptMap . has ( key ) ) {
38
+ // Server side rendering environments don't always have access to the `document` global.
39
+ // In these cases, we're not going to be able to return a script tag, so just return null.
40
+ if ( typeof document === 'undefined' ) return null ;
41
+
38
42
let tag = document . createElement ( 'script' ) ;
39
43
let promise = new Promise ( ( resolve , reject ) => {
40
44
let resolved = false ,
You can’t perform that action at this time.
0 commit comments