Конечно, ничего не работает, приятель, ваш метод detectOS
ничего не возвращает и не обновляет.
И что это за код в методе detectOS
?
if (navigator.userAgent.includes("win") != -1)
...
Этот код не имеет никакого смысла, и это не то, как вы получаете имя ОС. Вы можете узнать, как это сделать, на этой странице
После исправления сделайте следующее:
Шаг 1:
Переместите все свои свойства на data()
. Установленный хук не может получить доступ к вашим свойствам desc
, download
и name
внутри метода detectOS
.
data () {
return {
desc: '',
download: '',
osName: 'Unknown OS'
}
},
methods: {
...
Шаг 2:
Убедитесь, что ваш метод detectOS
правильно получает имя ОС. Зарегистрируйте переменную name
и убедитесь, что она по-прежнему не равна «Неизвестная ОС»
...
else {
name;
};
console.log(name)
Если она по-прежнему равна «Неизвестная ОС», это означает, что вы по-прежнему неправильно получаете имя ОС.
Шаг 3:
Обновите свойство osName
, чтобы его могли использовать другие методы.
data () {
return {
desc: '',
download: '',
osName: 'Unknown OS'
}
},
methods: {
detectOS() {
// Get the OS name
...
// Update property
this.osName = name
}
}