2017-06-05 52 views
1

對於簡單的客戶端到服務器Meteor方法調用,我有時會發現額外的抽象是一個煩惱。是否可以內聯定義服務器方法?例如,我想換成這樣:是否可以內聯Meteor服務器方法定義?

// server.js 
Server.methods({ foo: console.log('bar') }) 
// client.js 
Meteor.call('foo') 

有了這個:

client.js 
Meteor.call(() => console.log('bar')) 

根據文檔,這是不可能的,因爲call需要一個名字。

+0

如果只向客戶端提供服務器,你將如何在服務器上運行JS? (即client.js) – zim

回答

5

您只能在客戶端上定義方法。由於方法是在服務器上定義的。

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

在服務器上調用的方法定義了可以由遠程客戶端調用函數。

客戶端定義方法(在服務器上定義時)用於方法(UI)仿真。

調用客戶端的方法定義具有相同名稱的服務器方法相關聯的存根功能...

有是流星開發組與工作方法,開發出了大包: https://github.com/meteor/validated-method

相關問題