簡體   English   中英

我是否必須將方法用於服務器端專用邏輯?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM