2017-04-07 8 views
0

이것이 버그인지 확실치 않아 버그 리포트를 제출하는 대신 여기에서 묻습니다. server.lookup를 들어 hapijs (16.1.1)의 최신 버전에 대한 문서에서 hapijs - 라우트 구성 'id'속성 - 문자열 값을 허용하지 않습니다.

https://hapijs.com/api#serverlookupid

, 그것은 분명히 'ID'속성은 문자열이 될 수 있음을 나타냅니다.

const route = server.lookup('root'); 

그러나 문자열은 실제 구현 코드로 명시 적으로 금지되어 있습니다.

https://github.com/hapijs/hapi/blob/master/lib/connection.js#L340

Hoek.assert(id && typeof id === 'string', 'Invalid route id:', id); 

내가 여기서 뭔가를 놓치고 있습니까? 이것은 버그입니까, 설명서의 오류입니까, 아니면 단순히 오해입니까?

부과하는 이상한 제한이 있습니다. 문자열은 경로 ID에 대해 훨씬 논리적입니다.

다른 문제는 index.d.ts에서 특히 문자열 매개 변수를 사용해야한다는 것입니다.

이 기능은 완전히 손상된 것 같습니다. 숫자 ID를 사용해야하는 경로를 만들 때 검색을 시도 할 때 문자열을 사용해야하는 경우 어떻게 사용해야합니까?

답변

1

당신은 주장을 거꾸로 읽고 있습니다. 어설 션이 실패 할 경우에만 오류 메시지가 표시됩니다. id가 제공되면 문자열 만 가능합니다.

+0

감사합니다. 물론 있습니다. 이 문제는 오래된 형식 정의로 판명되었습니다. @ types/hapi는 버전 16.0.0이라고 주장했지만 hapijs의 이전 버전에서만 유효했습니다. – user1751825