Вставить репозиторий в модельный класс? - PullRequest
0 голосов
/ 02 июля 2019

Я использую фреймворк Loopback4.Я пытаюсь внедрить хранилище в некоторый класс модели (documentRepository в userModelClass).Я не уверен, что это возможно.Причина, по которой я хочу это сделать, заключается в том, что в репозитории у меня есть метод, который возвращает все документы, которые назначены пользователю.Позже появятся другие модели, которые будут использовать тот же метод.

Вот так я пытался внедрить свой репозиторий (модель пользователя конструктора):

constructor(
    data?: Partial<User>,
    @repository(DokumentRepository) public dokumentRepository?: DokumentRepository
  )

Когда я запускаюприложение Я получаю следующую ошибку в моей консоли:

E:\workspace\compass\backend\node_modules\@loopback\repository\dist\decorators\repository.decorator.js:51
const stringOrModel = typeof modelOrRepo !== 'string' && !modelOrRepo.prototype.getId
                                                                      ^

TypeError: Cannot read property 'prototype' of undefined
    at Object.repository (E:\workspace\compass\backend\node_modules\@loopback\repository\dist\decorators\repository.decorator.js:51:75)
    at Object.<anonymous> (E:\workspace\compass\backend\dist\src\models\admin\user.model.js:266:29)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (E:\workspace\compass\backend\dist\src\repositories\admin\user.repository.js:19:22)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
Waiting for the debugger to disconnect...

Process finished with exit code -1073741510 (0xC000013A: interrupted by Ctrl+C)

Может быть, кто-то из вас имеет представление о том, как внедрить репозиторий в модель, или может сказать, почему это невозможно ...

...