是否可以内联Meteor服务器方法定义?

Lan*_*uhn 1 meteor

对于简单的客户端到服务器Meteor方法调用,我有时会发现额外的抽象是一种烦恼.是否可以内联定义服务器方法?例如,我想替换这个:

// server.js
Server.methods({ foo: console.log('bar') })
// client.js
Meteor.call('foo')
Run Code Online (Sandbox Code Playgroud)

有了这个:

client.js
Meteor.call(() => console.log('bar'))
Run Code Online (Sandbox Code Playgroud)

根据文档,这是不可能的,因为call需要一个名字.

Jir*_*rik 5

您无法仅在客户端上定义方法.方法是在服务器上定义的.

https://docs.meteor.com/api/methods.html#Meteor-methods

服务器上的调用方法定义了客户端可以远程调用的函数.

在客户端上定义方法(在服务器上定义时)用于方法(UI)模拟.

在客户端上调用方法定义与同名服务器方法关联的存根函数...

Meteor开发小组开发了一个很好的软件包来处理方法:https: //github.com/meteor/validated-method