Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ReferenceError: window is not defined in v2.3.1 #133

Closed
pdcastro opened this issue Jun 4, 2019 · 5 comments
Closed

ReferenceError: window is not defined in v2.3.1 #133

pdcastro opened this issue Jun 4, 2019 · 5 comments

Comments

@pdcastro
Copy link

pdcastro commented Jun 4, 2019

I didn't seem to have permission to reopen issue #131, hence creating this new one.
The fix of PR #132 didn't seem to be sufficient:

$ node
> if (window) console.log('exists');
ReferenceError: window is not defined

> if (typeof window !== 'undefined') console.log('exists');
undefined

Known workaround: pin to version ~2.2.2.

@SebastianLibreros
Copy link

I have the same problem here:

"moment-duration-format": "^2.2.2"
node --version v8.14.0
nvm version 1.1.7

ReferenceError: window is not defined
node_modules\moment-duration-format\lib\moment-duration-format.js:1723
if (window && window.Intl && window.Intl.NumberFormat) {

@jsmreese
Copy link
Owner

jsmreese commented Jun 4, 2019

OK OK. Sigh.

@SebastianLibreros
Copy link

Hello,

I found two temp solutions:

  1. Force package.json to use version 2.2.2 "moment-duration-format": "2.2.2"
    or
  2. Append typeof window !== 'undefined' to condition if (window && window.Intl && window.Intl.NumberFormat) { => if (typeof window !== 'undefined' && window && window.Intl && window.Intl.NumberFormat) {

Ref: webpack/webpack#7112 (comment)

Thanks in advance.

cdupuis added a commit to atomist/sdm-core that referenced this issue Jun 4, 2019
@favna
Copy link

favna commented Jun 5, 2019

Got the window error on runkit but locally I get this with v2.3.1 and v2.3.0:

~/Downloads/index.js:4
const dt = moment.duration(process.uptime()).format('DD MM');
                                             ^

TypeError: moment.duration(...).format is not a function
    at Object.<anonymous> (~/Downloads/index.js:4:46)
    at Module._compile (internal/modules/cjs/loader.js:816:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:827:10)
    at Module.load (internal/modules/cjs/loader.js:685:32)
    at Function.Module._load (internal/modules/cjs/loader.js:620:12)
    at Function.Module.runMain (internal/modules/cjs/loader.js:877:12)
    at internal/main/run_main_module.js:21:11

File content:

const moment = require('moment'); // version 2.24.0
require('moment-duration-format'); // version 2.3.1

const dt = moment.duration(process.uptime()).format('DD MM');

console.log(dt);

Downgrading to 2.2.2 has it work just fine.

@jsmreese
Copy link
Owner

jsmreese commented Jun 5, 2019

Thanks @hyuraku. I've published version 2.3.2 which should fix this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants