Meteor.isServer 如何在 meteor 方法中工作



Meteor.isServer 如何在 meteor 方法中工作?

显然,与其将我的方法定义放在/server/methods中,不如将其放在/both/methods 中并使用 Meteor.isServer。代码是否会在客户端中调用一次,在服务器中调用一次?

我有点困惑

Meteor.isServer

不过是一个布尔值,如果代码在服务器上运行,则为真(如果在客户端上运行,则为假(。因此,通过将代码包装在由服务器和客户端加载的目录中,确保代码不会在客户端上执行。

您将在 if 语句中使用 Meteor.isServer(这是包装仅服务器代码的方式(。

提供

的代码和运行的代码之间存在差异。

如果您有:

/both/foo.js

。foo.js中的所有字节都是正在运行的服务器的一部分,并提供给浏览器。

但是受 .isServer(( 和 .isClient(( 保护的代码只能在适当的平台上运行

对我来说,这些是不同的关注点。 我通常不希望将代码提供给客户端,即使受 .isServer(( 保护,因为我不希望某个随机的人看到我们的服务器代码是什么样子的。

最新更新