[英]Do I have to use method for server-side only logic?
我想知道是否仅在服务器端进行操作,是否需要使用Meteor.methods
,如果没有,则将逻辑放在哪里。
我发现自己经常这样做:
Meteor.methods({
someMethod: function () {
if (! this.isSimulation) {
// make third party api call, use node module, etc.
}
}
});
在客户端,我不能让一个第三方API调用对延迟补偿,或者使用使用节点模块Npm.require
(假设不使用meteorhacks:npm
)。 因此,我总是将这些方法包装在if(! this.isSimulation)
周围。
但是,如果我不能使用延迟补偿,则似乎没有必要将这种逻辑放入一种方法中。 什么是广泛采用的做法? 我是否仍将这些逻辑放在方法中?
您可以将纯服务器端逻辑声明为位于server
目录下的server
全局函数。
server/lib/logic.js
serverLogic = function(){
// your server-side only logic
};
然后,您可以简单地在服务器环境中的任何位置,方法,集合挂钩等中调用函数。
server/anywhere.js
serverLogic();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.