正确的方式?在NodeJS和HTML中都包含JS

时间:2014-05-08 15:18:34

标签: javascript node.js

目前我有一个用于将消息从客户端传递到服务器的对象。

var JSONMessage = function() {
    this.sender = "";
    this.method = "";
    this.arguments = "";
}

我希望此对象既可用于服务器(NodeJS),也可用于客户端(HTML)。目前我在上面的对象下面做了以下几个。

if ( typeof module === 'undefined' ) {
    console.log("must be client side!");
}
else {
    module.exports = JSONMessage;
}

在nodeJS文件中,我执行以下操作

var JSONMessage = require('./public/js/message');

在HTML中,我可以简单地包含js文件。

我的问题是,这是在Node和Javascript之间共享代码的最佳方式吗?

1 个答案:

答案 0 :(得分:1)

您应该查看此Github Repo中托管的umdjs模式:

https://github.com/umdjs/umd

你正在做的事情会起作用,但你可以通过使用该回购中的一个来消除猜测工作。