У меня возникла проблема со ссылками на места в компонентах aframe. Пока ничего не получилось. Вот три решения, которые я пытаюсь найти:
Используйте aframe-href-component, где я могу просто поместить href = "www.sample.com" в любой объект. Отлично, проблема в том, что когда я перехожу к этому cdn, чтобы получить aframe-href-component.min.js, я получаю ошибку 404. Может, автору это удалось. Так что это тупик.
Сообщается о проблеме с кадром № 403, последний раз закрытой в 2016 году, когда автор Кевин Нго, который приводит меня к git pull № 1575, где добавлен новый компонент link.js. Это означает, что я могу просто использовать атрибут ссылка на сайт в своем компоненте. Например:
<a-text link = "https://www.washingtonpost.com/archive/local/1998/01/08/labor-leader-jack-t-conway-dies" id = "chrysler-caption" position = "-5.40 6.70 -0.30" rotation = "0 0 0" scale = "1 1 1" value = "JACK T. CONWAY"></a-text>
Кто-то упомянул в другом сообщении о переполнении стека, чтобы просто добавить мой собственный компонент, поэтому здесь я создал этот:
AFRAME.registerComponent('link-url', {
schema: {default: ''},
init: function () {
var url = this.data;
this.el.addEventListener('click', function () {
window.location.href = url;
});
}
});
Поэтому я пытаюсь реализовать это в моем кадре картинная галерея здесь. Я попробовал все два варианта, но по какой-то причине текстовым файлом в верхнем левом углу изображение не может быть связано с внешней статьей (обычная публикация на новостном сайте, а не на сайте AFRAME).
Я подозреваю, что что-то происходит с моим пользовательским зарегистрированным компонентом AFRAME, но было бы здорово узнать, как создать ссылку на щелчок.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


2) Вам необходимо добавить href: link в компонент link:
<a-text link = "href:https://www.washingtonpost.com/archive/local/1998/01/08/labor-leader-jack-t-conway-dies"></a-text>
3) Согласно документы схема работает следующим образом: объявить переменную и получить к ней доступ в объекте data:
AFRAME.registerComponent("foo", {
schema: {
{myvalue: {default: ""}
},
init: function() {
var myvalue = this.data.myvalue
}
})
<a-box foo = "myvalue: 10">
Итак, вы не можете просто попытаться получить доступ к какой-то воображаемой переменной в data, вам нужно «объявить» ее в схеме, а затем вы можете получить доступ к значению.
Обратите внимание на 2) и 3) здесь (сбой) или здесь (рабочий пример, но не позволяет перенаправление)
@ngokevin спасибо за claryfing, я был уверен, что некоторые свойства создаются там в конструкторе Component: P Спасибо за подсказку, мне нравится, как кнопка "назад" сделана с использованием локального хранилища здесь :)
По умолчанию у объекта
dataнет никаких свойств. p.s., проверьте github.com/supermedium/gunters-of-oasis на предмет реализации ссылок, сотен взаимосвязанных / сгенерированных миров с использованием порталов.