2014-12-30 5 views
0

Scaldi documentaiton에서 언급 한 단계를 수행하고 있습니다. 다음은 내 코드입니다.Scaldi를 사용할 때의 컴파일 오류

class Game(players: List[Player], currentPlayer: Player, 
      board: Board, active: Boolean, gamePersistor: GamePersistor) extends Injectable { 

    def this(players: List[Player], currentPlayer: Player, 
      board: Board, active: Boolean)(implicit inj: Injector) { 
    this(players, currentPlayer, board, active, inject[GamePersistor]) 
    } 
} 

다음과 같은 컴파일 오류가 발생합니다.

Error:(11, 49) not found: value inject 
    this(players, currentPlayer, board, active, inject[GamePersistor]) 
               ^

누군가이 문제를 해결할 수 있도록 도와 줄 수 있습니까? 분사의

모든 형태의 예상 문서 및 인젝터의 암시 적 인스턴스에서 파악

답변

1

는 범위에 있어야합니다.

모듈 정의에 주입하는 경우 이미 을 제공합니다. 자신 만의 클래스에 주입하는 경우 위의 예제와 같이 접근법은 생성자 인수로 암시 적 주입기 인스턴스를 제공하는 것입니다.

그래서 코드가 있어야한다

class Game(players: List[Player], currentPlayer: Player, 
      board: Board, active: Boolean, gamePersistor: GamePersistor)(implicit inj:Injector) extends Injectable { 

    def this(players: List[Player], currentPlayer: Player, 
      board: Board, active: Boolean)(implicit inj: Injector) { 
    this(players, currentPlayer, board, active, inject[GamePersistor]) 
    } 
}