From 3cb36639ad6e4babe25471baea0f61a85f432e8b Mon Sep 17 00:00:00 2001 From: Michael Hsu Date: Fri, 31 May 2019 13:59:28 +0800 Subject: [PATCH] fix: Add SSR support --- index.js | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/index.js b/index.js index 32509f1..fbe177b 100644 --- a/index.js +++ b/index.js @@ -4,19 +4,26 @@ let _throttle = require('lodash.throttle') let supportsPassive = false try { - var opts = Object.defineProperty({}, 'passive', { - get: function() { - supportsPassive = true - }, - }) - window.addEventListener('testPassive', null, opts) - window.removeEventListener('testPassive', null, opts) + if (typeof window !== 'undefined') { + var opts = Object.defineProperty({}, 'passive', { + get: function() { + supportsPassive = true + }, + }) + window.addEventListener('testPassive', null, opts) + window.removeEventListener('testPassive', null, opts) + } } catch (e) {} -let getPosition = () => ({ - x: window.pageXOffset, - y: window.pageYOffset, -}) +let getPosition = () => { + if (typeof window === 'undefined') { + return { x: 0, y: 0 }; + } + return { + x: window.pageXOffset, + y: window.pageYOffset, + }; +}; let defaultOptions = { throttle: 100,