繁体   English   中英

如果我的模块依赖于另一个模块,如何使用node.js在客户端和服务器之间共享模块?

[英]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在节点和浏览器中加载模块。

请参阅require.js页面上的文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM