Получить необработанный код A-кадра со сцены

Я работаю над IDE A-Frame на основе Ace. Редактор проверяет правильность написанного HTML-кода, и если это так, я просто вставляю HTML-код в другой div для рендеринга сцены. Это направление «правки» работает.

Что я хочу / не могу приступить к работе: если я теперь перемещаю объект в сцене, например, в инспекторе A-Frame, я не могу получить результирующий простой код A-Frame для отображения измененных значений в редакторе. Есть ли способ получить простой код A-Frame из сцены, чтобы реализовать полную синхронизацию IDE и результата? Спасибо!

А-рамка  редактор


person Fabian    schedule 23.02.2017    source источник


Ответы (1)


Используйте компонент debug cf https://aframe.io/docs/0.5.0/components/debug.html. Он сбрасывает атрибуты в DOM. Обратите внимание, что вы также можете вызвать его программно, используя document.querySelector('a-scene').flushToDOM(true);, если вы хотите скрыть это от пользователя.

Вот базовый пример http://jsbin.com/nuwoxu/edit?html,output

AFRAME.registerComponent('toeditor', {
  init: function(){    
    this.flushToDOM(true)
    console.log(this.el.innerHTML
      .replace(/<canvas.*/,"")
      // clean the injected canvas
      .replace(/\w+="" /g, ""))
      // clean empty attributes, using defaults
  }  
});
person Utopiah    schedule 23.02.2017