我有三個類:用戶、帳戶和模型。用戶和帳戶正在擴展模型類。用戶.js:import Model from '@/classes/Model'export default class User extends Model { constructor(data) { super(data) }}帳戶.js :import Model from '@/classes/Model'export default class Account extends Model { constructor(data) { super(data) }}和 Model.js :import Account from '@/classes/Account'import User from '@/classes/User'export default class Model { static _classesMapping = { Account, User } constructor(data) { ... } static create(models) { return new Model._classesMapping[this.name](models) }}我想從模型中的靜態(tài)方法 create 創(chuàng)建 Account 和 User 實例,如下所示:Account.create()但是,由于循環(huán)依賴問題,我在編譯時收到此錯誤:“超級表達式必須為空或函數(shù)”。我不知道如何解決這個問題,而不必像這樣將類作為參數(shù)傳遞給 Model.create 方法,我覺得這很丑陋Account.create(data, Account)
如何解決這個循環(huán)依賴問題?
梵蒂岡之花
2021-07-06 17:08:15