0

我正在尝试使用 node.js、socket.io 和 express 构建一个应用程序。

我有一个公共目录,其中包含所有客户端代码,并通过 express 发送给客户端

app.use(express.static(__dirname + '/public'));

我有一些驻留在根目录中的服务器代码。我现在想添加一些对服务器端和客户端代码都通用的类(我将在这两个地方创建对象)我将这些通用模块放在哪里以及使用它们的最佳方式是什么。我没有在他们这边找到任何与此相关的内容,也没有太多关于它的文档。

4

1 回答 1

0

客户端和服务器之间可以共享js代码,虽然感觉有点笨拙

首先,node 使用了模块,所以要克服它,我们必须在 or 上创建一个人工变量global scope或生成一些ReferenceErrors.

其次,共享类也必须放在global scope, 上(当然,为了最大程度地降低风险,我们可以将它们放在单个 中namespace)。

不知道您的特定上下文是什么,但我认为从长远来看,无论如何将这些世界(客户端和服务器端)保持在一起可能会有些困难。

顺便提一句。如果您决定使用共享版本,您可以创建一个新文件夹shared,然后调用服务器代码:

 app.use("/shared", express.static(__dirname + "/shared"));

静态服务其内容。

于 2013-11-13T23:36:09.750 回答