requestPointerLock()
을 Vue.js 구성 요소 안에 사용하려고합니다. 구성 요소의 pointerShouldLock
데이터 항목이 true
인 경우 포인터는 beforeUpdate()
수명주기 후크 중에 잠겨 야합니다. 내 코드는 다음과 같습니다requestPointerLock()이 Vue.js 구성 요소 내부에서 작동하지 않습니다.
beforeUpdate() {
if (this.pointerShouldLock) {
const gameScreen = document.getElementById('game-screen')
requestPointerLock(gameScreen)
}
}
requestPointerLock()
기능은 다음과 같습니다 Vue.js를 사용하는 경우
requestPointerLock = element => {
element.requestPointerLock =
element.requestPointerLock || element.mozRequestPointerLock
element.requestPointerLock()
}
이 기술은 반응하거나 바닐라 JS으로 잘 작동하지만, 포인터가 고정되지 않습니다 . 대신 pointerlockerror
이벤트가 발생합니다.
나는 또한 updated()
라이프 사이클 후크를 사용해 보았지만 이것도 작동하지 않습니다.
Vue.js 구성 요소 내부에서 포인터 잠금을 성공적으로 요청할 수없는 이유는 누구나 알 수 있습니까?
리뷰어가 답변을 삭제하라고 말한 것은 정말 불행합니다. 편집 내용이 답입니다. 여기에있는 [사양 링크] (https://w3c.github.io/pointerlock/#x3-glossary)가 있습니다. 그것. 나는 당신의 대답을 취소하기로 표결했지만, 아마도 "업데이트"와 같은 금단의 단어는 피하고, 새로운 답변은 다시 게시해야합니다. 그러나 이것은 업데이트가 아니기 때문에 실제 답변과 올바른 대답입니다. 사양의 인용을 자유롭게 포함 시키십시오. – Kaiido