簡體   English   中英

用Parse-Server划分Cloud Code的正確方法

[英]Proper way to compartmentalize Cloud Code with Parse-Server

目前,我... sorta構建了一個非常大的main.js文件,其中包含我用於Parse-Server的雲代碼的所有內容。 它充滿了大約200多個Parse.Cloud.job("jobName", function(request, status){})Parse.Cloud.define("functionName", function(request, response){})調用,並完成了他們的執行。

我想在將來更正確地重構/構建代碼,但我不確定這樣做的最佳實踐。

我的main.js應該充滿這樣的東西嗎:

Parse.Cloud.define("function1", require('../function1.js'));
Parse.Cloud.define("function2", require('../function2.js'));
Parse.Cloud.job("job1", require('../job1.js'));

我在哪里為main.js中的每個函數/作業調用Parse.Cloud.define / job,並要求按行排列,各個文件是各個函數?

還是main.js可以要求我的包含多個相關功能的各種js文件,並從這些文件中調用Parse.Cloud.define / job的方法?

最好將兩者結合起來會更好:

const module1 = require('../module1.js');
const module2 = require('../module2.js');

Parse.Cloud.define("function1", module1.function1(request, response));
Parse.Cloud.define("function2", module2.function2(request, response));
Parse.Cloud.job("job1", module1.job1(request, status));
Parse.Cloud.job("job2", module2.job2(request, status));

我非常有興趣指出一些有關如何最好地構造它的材料。 我總體上發現了有關node.js應用程序的一些資料,但是我擔心的是Parse-Server的特定方面,以及是否可以在除main.js之外的任何地方調用Parse.Cloud.define。 我在搜索中找不到該問題的任何答案。 如果您有使用Parse-Server的公共項目的任何示例,您認為它們的結構都很好,那么我也很樂意查看這些示例。

感謝您的任何建議!

我遇到了與您完全相同的情況,因此我決定將雲代碼分成模塊。 我每節課建立一個模塊。 因此,假設您的項目中包含以下類:

  1. 用戶
  2. 聯系
  3. 通訊
  4. ...

然后,除了要在main.js文件中創建main.js文件之外,還需要創建user.js,contact.js,communication.js,您需要這些模塊。 當您需要它們時,請注意您使用了正確的路徑,我建議您使用nodejs 路徑模塊。

在main.js中,您還可以添加一些通用邏輯,當然也需要添加上面其他模塊的代碼。

在模塊內部,您可以創建雲代碼事件(afterSave,beforeSave等)以及自定義雲代碼功能。 在這里,您可以自由使用所需的任何方法或設計模式(util,類,函數,閉包等)。

此外,我建議您使用Promises以獲得清晰的代碼。

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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