[英]How can I share modules between the client and server using node.js if my module depends on another?
这是我的Node.js情况:
我正在尝试在Node.js服务器和游戏浏览器之间共享代码。 基本上,我想分享游戏逻辑。
假设我的游戏有一张桌子,而这张桌子可以有玩家。 我希望每个都是客户端和服务器都可以使用的模块。
我知道我可以做这样的事情:
(function(exports){
exports.test = function(){
return 'hello world'
};
})(typeof exports === 'undefined'? this['Table']={}: exports);
我可以在Table中使用类似的功能。 但是,如果需要在此Table模块中使用Players怎么办? 就像是:
(function(exports){
exports.test = function(){
var Player = require('./Player');
var p1 = new Player();
};
})(typeof exports === 'undefined'? this['Table']={}: exports);
尽管这在Node中有效,但由于未定义require,因此显然不会在浏览器中使用。 不需要,它就可以在浏览器上运行,但不能在Node上运行。
TL; DR :我需要将一个模块中的代码“包含”到另一个模块中,这可以由浏览器(客户端)和服务器共享。
谢谢
您可以使用require.js在节点和浏览器中加载模块。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.