私のコードでAフレームのvr-mode-ui
を動的にいくつかのルールに基づいて表示/非表示しようとしています。 Initally <a-scene>
は次のようになります。私のコントローラでAフレームのvr-mode-uiを動的に切り替えます
<a-scene id="vr-scene" vr-mode-ui="enabled: false">
、私はフラグに基づいて、それを有効または無効にしようとしています:
let scene = document.querySelector('#vr-scene');
if (showVR) {
scene.setAttribute('vr-mode-ui', 'enabled: true');
} else {
scene.setAttribute('vr-mode-ui', 'enabled: false');
}
しかし、このトグルが起こる瞬間、私は上のエラーを取得しますコンソールは次のようになります: TypeError: Cannot read property 'removeChild' of null
ここで間違っていることをお伝えください。 VRボタンを有効/無効にするより良い方法はありますか?ここで
は簡単codepenです:https://codepen.io/anon/pen/BdZWdz
ステップ:
- クリックし
- を有効化、無効化
- をクリックして、現在(VRボタンが起動しない)
あなたは、おそらくそれはすでに無効になっていたときに、それを無効にしようとしていますか? – ngokevin
ここに2つの問題があります。 'scene.setAttribute(' vr-mode-ui '、' enabled:true ');はvr-buttonを戻していません。だから、次回に 'else'に入ると、それはまだ無効になっていてエラーです。 '有効化 'された部分がなぜそれを戻すのではないかというアイディア – Mustang
@ngokevin:私が走っている問題を示すためのコードを追加しました。それを見てください。あなたの助けに感謝。 – Mustang