环回操作挂钩不触发

时间:2018-03-18 04:51:01

标签: javascript mysql node.js loopbackjs

我在sales表上设置了一个操作挂钩,但是当该表中插入新行时,该操作不会触发。我的钩焦在下面给出了。数据库是MySQL。

module.exports = function (LiveSales) {
  LiveSales.observe('after save', function (ctx, next) {
    var socket = LiveSales.app.io;
    console.log("New Item added");
    if (ctx.isNewInstance) {
    } else {
    }
    //Calling the next middleware..
    next();
  }); //after save..
}

2 个答案:

答案 0 :(得分:0)

也许在远程方法之后使用。

  LiveSales.afterRemote('*.save', function(ctx, user, next) {
     var socket = LiveSales.app.io;
     console.log("New Item added");

     if (ctx.isNewInstance) {

     } else {

     }
     //Calling the next middleware..
     next();
   }); //after save..
  });

来自loopback docs

答案 1 :(得分:0)

这取决于您如何插入数据! 如果您通过API网址/api/examples/create

进行插入

您应该创建一个After Remote方法,如下所示: 如果您没有此选项,ctx.isNewInstance上下文将包含这些对象reqresargsresult检查上下文对象here。< / p>

user以下将是远程结果或ctx.result

MEHTOD 可以是:create用于发布,patchOrCreate用于补丁/ upsert方法

LiveSales.afterRemote(METHOD, function(ctx, user, next) {
     var socket = LiveSales.app.io;
     console.log("New Item added");

     if (user) {

      } else {

      }

     //Calling the next middleware..
     next();
   });
  });