javascript - 引用错误 : window is not defined in React

标签 javascript node.js reactjs web npm

我为我的应用程序安装了“react-speech”包来构建文本到语音的功能。但是在导入包时出现以下错误。我做了足够的谷歌搜索来解决这个问题,但无法这样做。任何帮助深表感谢。
错误:

ReferenceError: window is not defined

    at new SpeakTTS (/Users/moharja/Project/React-master/node_modules/speak-tts/lib/speak-tts.js:22:48)

    at Object.<anonymous> (/Users/moharja/Project/React-master/src/components/Judgement/Landing/RightBar/Top/top.component.jsx:24:16)

    at Module._compile (internal/modules/cjs/loader.js:1201:30)

    at Module._compile (/Users/moharja/Project/React-master/node_modules/pirates/lib/index.js:99:24)

    at Module._extensions..js (internal/modules/cjs/loader.js:1221:10)

    at Object.newLoader [as .jsx] (/Users/moharja/Project/React-master/node_modules/pirates/lib/index.js:104:7)

    at Module.load (internal/modules/cjs/loader.js:1050:32)

    at Function.Module._load (internal/modules/cjs/loader.js:938:14)

    at Module.require (internal/modules/cjs/loader.js:1090:19)

    at require (internal/modules/cjs/helpers.js:75:18)

npm ERR! code ELIFECYCLE

npm ERR! errno 1

npm ERR! lm-suite-react@0.1.0 start: `rimraf build && webpack --mode production --progress --profile --color && node index.js`

npm ERR! Exit status 1

npm ERR!

npm ERR! Failed at the lm-suite-react@0.1.0 start script.

npm ERR! This is probably not a problem with npm. There is likely additional logging output above.



npm ERR! A complete log of this run can be found in:

npm ERR!     /Users/moharja/.npm/_logs/2020-10-19T17_30_09_085Z-debug.log `
注意:我也尝试使用不同的包而不是“react-speech”。但同样的错误正在发生。

最佳答案

此库与 SSR(服务器端渲染)不兼容。
我猜你正在尝试使用 webpack 来做到这一点。

if (typeof window === 'undefined') {
  global.window = {}
}
我想这可能不会引发任何错误,请记住您必须在导入库之前声明它。

关于javascript - 引用错误 : window is not defined in React,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64432980/

相关文章:

javascript - 在 React/JS 中打印当前 URL

node.js - 如何为公司内网安装私有(private)的 Node.js 包仓库?

javascript - react .js : Is it possible to namespace child components while still using JSX to refer to them?

javascript - 如何在核心 JavaScript 中格式化/美化 HTML、CSS 和 JavaScript 代码?

javascript - 在 IF 语句中使用 VB 中的 'Day' 函数来更改日期并根据工作日发送表格

javascript - 将日期从字符串转换为日期 Javascript

linux - 在多个 node.js HTTP 进程之间共享一个端口

javascript - Cx 框架 : How to access a DOM element in Cx?

javascript - 如何在 REACT 中将 json 对象请求字符串值更新为 NUMBER

javascript - 在 Google Chart 中显示/隐藏线条/数据