1

我正在使用环回 2.0。

我使用 yeoman 生成器生成了我的模型,并为每个模型添加了一个 js 文件以扩展其行为。

如何在 ModelB 中从 ModelA 调用方法?

例子

文件夹结构:

/common
  /models
    Car.json
    Car.js
    Engine.json
    Engine.js
...

汽车.js:

module.exports = function(Car) {
  Car.drive = function(destination, fn) { ... }
  ...
};

引擎.js:

module.exports = function(Engine) {
  Engine.doSomething = function(something, fn) { 
    // *** Here is where I want to invoke a method from the Car.js
    var loopback = require('loopback');
    var Car = loopback.models.Car;
    Car.drive('49.1234,12.1234', fn);
    // ***
  }
  ...
};
4

1 回答 1

6

模型类如Engine将有一个属性app来提供对其他模型的访问,例如:

module.exports = function(Engine) {
  Engine.doSomething = function(something, fn) { 
    // *** Here is where I want to invoke a method from the Car.js
    var Car = Engine.app.models.Car;
    Car.drive('49.1234,12.1234', fn);
    // ***
  }
  ...
};
于 2014-07-24T21:16:22.527 回答