[英]Cannot get async javascript to work
我正在使用node.js,RailwayJS和JugglingDB。
我有一個模型:
Model.afterInitialize = function() {
var me = this;
Sequence.getSequence('forModel', function(sequence) {
me.serialId = sequence;
});
me.title = 'Hello';
}
一旦完成,僅設置屬性title
。 這不足為奇,但我無法使其正常工作。 我嘗試使用async
模塊沒有運氣。
添加了一個回調參數以便能夠鏈接。
Model.afterInitialize = function(then)
{
then = then || function(me) { };
var me = this;
Sequence.getSequence('forModel', function(sequence)
{
me.serialId = sequence;
me.title = 'Hello';
then.call(null, me);
});
};
如果Sequence.getSequence
是異步的,則在調用它時 ,將從回調中設置serialId
。 由於它是異步的,因此可能在 Model.afterInitialize
返回之后。 如果必須執行取決於所設置的serialId
操作,請從Sequence.getSequence
回調serialId
其激發。
Model.afterInitialize
是我無法更改的第三方API的一部分,因此很遺憾,無法執行此操作 。 我希望對標志進行某種無限循環檢查是可行的,但這種方法不可行,即使確實可行,也將是一個障礙。
我最終Model.beforeSave = function(callback) {};
了另一個方法Model.beforeSave = function(callback) {};
,這需要回調。
僅供參考,我正在使用https://github.com/1602/jugglingdb
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.