我如何在服务器和客户端上使用JavaScript,同时在两者之间共享一些代码



所以我有一个小的业余项目,我想工作的乐趣,但我已经搜索了一些例子/库/框架,可以用来共享尽可能多的代码从客户端到服务器。

到目前为止,我唯一的经验是客户端JavaScript,但我认为在服务器端使用相同的语言可能会很酷,甚至能够在两者上使用完全相同的代码。

对我来说最好的事情是写一个Model,例如一个Dog,并为所说的Dog模型写验证函数和方法,并且能够在客户端和服务器上拥有完全相同的验证/业务逻辑,但只需要写一次。

有人已经做过这样的事情或者做得更好吗?任何例子都很棒。

您需要确定可以在服务器和客户机上重用的模块,并将它们写入单独的库中。然后你可以在nodejs和你的前端javascript中包含这个库。

我使用并喜欢的一个这样的库的特定示例是chess.js (https://github.com/jhlywa/chess.js)

chess.js是一个Javascript国际象棋库,用于国际象棋移动生成/确认,棋子放置/移动,以及检查/将军僵局检测

例如,如果你编写象棋游戏服务器,你可以使用它来验证和保持游戏在服务器和浏览器上的状态。

代码被封装在一个大函数中,当加载到浏览器中时,该函数在窗口中可用。

这行代码使它在节点环境中也可以作为node.js模块使用:

if (typeof exports !== 'undefined') exports.Chess = Chess;

相关内容

最新更新