ReferenceError:未在对象上定义窗口 Node.js

【字号: 日期:2024-04-15浏览:26作者:雯心
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解决ReferenceError:未在对象上定义窗口 Node.js?

window 是Node上不存在的浏览器。

如果您确实想创建一个 ,请使用global:

global.windowVar = /*...*/; // BUT PLEASE DON’T DO THIS, keep reading

global是Node在全局对象上的标识符,就像window在浏览器上一样。

,无需在Node程序中创建真正的全局变量。相反,只需创建一个全局模块:

var windowVar = /*...*/;

…并且由于您将其包含在中exports,因此其他模块可以根据需要访问其引用的对象。

解决方法

我曾在这里看到类似的问题,但没有一个与我的情况相符。在我的网站我有3个JavaScript文件:client.js,server.js,myModule.js。在其中,client.js我创建了一个名为的窗口变量windowVar,并向其中添加了一些属性。在中myModule.js,我添加了一些其他属性并在其中使用它们,然后导出文件并在中使用它server.js。

client.js:

window.windowVar= { func1: function(args) { //some sode here },counter:0};

myModule.js :

module.exports={wVar:windowVar,addMessage,getMessages,deleteMessage};windowVar.serverCounter = 0;windowVar.arr1=[];

server.js:

var m= require(’./myModule’);

在node.js中运行服务器时,出现以下错误:

ReferenceError:未在对象上定义窗口。 <anonymous>

据我了解,window是浏览器属性,但是在这种情况下如何解决错误?任何帮助表示赞赏

相关文章: