循环钩子如何在内部发生工作流程

时间:2016-10-18 06:59:21

标签: node.js loopbackjs

我是 loopback 的新手,当我在环回中看到钩子(远程,观察和模型)时,我感到很惊讶。

我想知道哪个钩子触发器首先如果我使用所有钩子。我已经尝试过这段代码片段。但我没有先得到哪个钩子。

Users.beforeRemote('create', (ctx, modelInstance, next) => signup(ctx, modelInstance, next, Users));

Users.observe('before save', validateBeforeSave);

Users.beforeSave = testFunction

任何人都可以解释。

由于

1 个答案:

答案 0 :(得分:1)

首先调用

Users.beforeRemote('create', ..),因为它在Users.create之前调用,因为其名称表示

(在环回中,远程是一个模型的功能,可以使用REST API远程调用。当你创建一个POST api/Users时,你实际上是一个远程致电Users.create

然后调用远程方法Users.create。在此方法中的某些时刻,数据将持久保存到数据库(= save)。因此,在保存数据之前,会调用Users.observe('before save',..)

最后,Users.beforeSave是一个模型钩子,并且会在Users.observe('before save',..)的同一时刻被调用。

注意Users.beforeSave和大多数模型挂钩are deprecated都支持操作挂钩。

总结

  1. Users.beforeRemote('create', ..)
  2. Users.create
  3. Users.observe('before save',..)
  4. 并且不要使用Model.beforeSave