0
私は、ゲームのクラスと定義されたゲームのためのすべてのネットワークプレーヤーのものを扱うマルチクラスを持っている:inversify:ないの注射contrustor引数
export interface Multiplayer{
game: Game
start()
}
export class WebSocketMultiplayer implements Multiplayer{
constructor(public game: Game){}
start(){}
}
inversify設定:
container.bind<Game>('Game').to(BasicGame)
container.bind<Multiplayer>('Multiplayer').to(WebSocketMultiplayer)
今私が作成したいです、設定してゲームを実行した後、マルチプレイヤーを実行します。
const game = kernel.get<Game>('Game')
game.run()
const multiplayer = kernel.get<Multiplayer>('Multiplayer')
multiplayer.start()
しかし、ゲームインスタンスをMultiplayer
コンストラクタに渡す方法はありますか? @inject
をWebSocketMultiplayer
コンストラクタに使用すると、別のゲームインスタンスが作成されます。私は今のところ使ってい
一時的な解決策は、マルチスタート機能
start(game: Game){
this.game = game
}
でゲームインスタンスを渡すが、それはInversifyで行われると仮定どのようにするのですか?
カスタムプロミスライブラリで 'toProvider'を使う機会はありますか、それともネイティブな約束が必要なのでしょうか? – SET