如何使Javascript适合浏览器端?
我目前正在编写一个node.js应用程序,这是一个简单的Snake/Tron风格的游戏,但是我已经编写了我想在服务器端和浏览器端使用的类(像素贴图)。我有一条关于节点侧的线,它是:如何使Javascript适合浏览器端?,javascript,node.js,browser,Javascript,Node.js,Browser,我目前正在编写一个node.js应用程序,这是一个简单的Snake/Tron风格的游戏,但是我已经编写了我想在服务器端和浏览器端使用的类(像素贴图)。我有一条关于节点侧的线,它是: module.exports = Map; 但这在浏览器端不起作用(我收到一条关于模块未定义的消息),因此地图不会加载,我的游戏也不会显示在屏幕上 在这之前我已经试过写一行了,比如: if (!document) module.exports = Map; 但这会使节点崩溃,并导致“ReferenceEr
module.exports = Map;
但这在浏览器端不起作用(我收到一条关于模块未定义的消息),因此地图不会加载,我的游戏也不会显示在屏幕上
在这之前我已经试过写一行了,比如:
if (!document)
module.exports = Map;
但这会使节点崩溃,并导致“ReferenceError:未定义文档”。
有什么方法可以在服务器端和客户端使用相同的代码吗?对于,我只需执行以下操作:
if (window) {
//you are in browser
} else {
// you are in Node.js
}
希望这有帮助。浏览器没有node那样的commonJS规范。您可以尝试使用模块加载器之类的东西。它可以在客户端和nodejs中使用
另一个选项是。参考错误可以通过使用
if typeof document!='而不是未定义的“
”
if (typeof module !== 'undefined') {
module.exports = foo;
} else {
this.foo = foo; // or window.foo
}