dat.gui удалить и добавить слушателя - PullRequest
0 голосов
/ 08 октября 2019

Допустим, у меня есть 2 объекта на моей сцене, и иногда я хочу, чтобы слушатель был на первом, а иногда на втором объекте. Итак, я сделал:

    gui = new GUI( { width: 330 } );
    box1 = gui.addFolder('ObjectScale');
    item1 = box1.add(myObject.scale, 'x', 0, 3).name('Width').listen();

Теперь я хочу прослушиватель для моего второго объекта, поэтому переменная "myobject" изменится на "myobject2". я попробовал:

    box1.remove(item1);

Здесь появляется эта ошибка "HierarchyRequestError".

Тогда я просто хотел сделать это:

    item1 = box1.add(myObject2.scale, 'x', 0, 3).name('Width').listen();

Вопросы: Почему возникает ошибкаКак я могу отменить слушателя и сделать один для второго объекта? Как я могу просто удалить элемент? (мне тоже нужно это сделать)

1 Ответ

0 голосов
/ 08 октября 2019

Мне удалось это сделать.

    gui.removeFolder(box1);
    box1 = gui.addFolder('ObjectScale');

Проблема: все слушатели будут удалены. Для меня это хорошо. Больше кода, но хорошо.

...