سلام
توی state به این صورت میخوام از کلاس Audio یک آبجکت بسازم ولی ارور میده
export const state = () => ({
[AUDIO]: new Audio()
})
Audio is not definedسلام HTMLAudioElement
https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement
برای مرورگر
شاید پاسخ شما همینجا باشد
این دستور رو اینطوری بزنید:
[AUDIO]: new Audio()
[AUDIO]: new HTMLAudioElement.Audio()HTMLAudioElement is not definedدوستان راهی هست برای حل این ارور؟
@hesammousavi
من همین کدها رو دقیقا در vue مینویسم و بدون هیچ مشکلی اجرا میشن احتمالا مشکل از ناکست نظر شما چیه ؟
@ashkannazari248
این شرط به چه صورت داخل state قرار بدم ؟
میتونید مقدار دهی اولیه نکنید و توی میدلور یا جای دیگه مقدار دهی کنید. برای مقدار دهی اولیه میتونید این کار رو بکنید
export default ()=>({
audio:process.client?new Audio():null
});
یعنی اگه سمت کلاینت بود مقدار بده و اگه نه نال بزار. میتونید نتیجه رو مساوی با یه ارو فانکشن بزارید که یه مقدار رو ریترن میکنه
پروژه به صورت universal با این شرط حتما برابر null قرار میگیره
@hesammousavi
@ashkannazari248
نمیخواهم audio به صورت نال باشه ممنون میشم راهنمایی کنید
از onNuxtReady میشه استفاده کرد؟
سمت سرور اصلاً این وجود نداره. وقتی چیزی وجود نداره شما اجازه استفاده ندارید.
توضیح در سایت ناکست :
https://nuxtjs.org/faq/window-document-undefined/
@ashkannazari248
منم میدونم وجود نداره راهی نداره بشه استفاده کرد؟