У меня проблема с динамическим рендерингом a-frame
компонентов.Я видел эту проблему для a-image
и a-video
, когда 2D-плоскость (видео и изображение) становится 3D, когда она динамически удаляется из DOM через угловой шаблон, а когда она динамически вводится обратно в DOM, она становится 3D,Мой a-image
квадрат становится кубом, а мой a-video
набирает толщину.
Обновление:
После отладки выглядит, как геометрия a-video
преобразован из plane
в box
.Это поведение остается странным, потому что другие a-video
братья и сестры plane
.Пока что, похоже, ngFor
преобразует некоторые a-video
в box
, а некоторые в plane
.
a-image
, выпуск:
<!-- Paused -->
<ng-container *ngIf="!videoActive">
<!-- Center -->
<a-image
(click)="play()"
src="./assets/icon/play-circle.png"
position="0 0 0.1"
height="1"
width="1">
</a-image>
<!-- Bottom Left -->
<a-image
(click)="play()"
src="./assets/icon/play.png"
position="-7 -3 0.1"
height="1"
width="1">
</a-image>
</ng-container>
<!-- Playing -->
<ng-container *ngIf="videoActive">
<!-- Center -->
<a-image
(click)="pause()"
src="./assets/icon/pause-circle.png"
position="0 0 2"
height="1"
width="1">
</a-image>
<!-- Bottom Left -->
<a-image
(click)="pause()"
src="./assets/icon/pause.png"
position="-7 -3 2"
height="1"
width="1">
</a-image>
</ng-container>
![enter image description here](https://i.stack.imgur.com/gfhnq.png)
a-video
выпуск:
<ng-template #template let-props>
<ng-container *ngFor="let video of props.videos">
<a-video
loop="true"
[attr.id]="video.id"
[attr.src]="video.src"
[attr.position]="video.position"
[attr.rotation]="video.rotation"
[attr.scale]="video.scale"
[attr.width]="video.width"
[attr.height]="video.height"
[data]="video">
</a-video>
</ng-container>
</ng-template>
![enter image description here](https://i.stack.imgur.com/yu2Ky.png)
Приведенное выше изображение для a-video
показывает, что брат или сестравидео отображаются по-разному после удаления.Толщина одного из видео.