У меня есть функция, которая позволяет мне загружать определенные модули на определенных страницах на основе их классов тела.По какой-то причине моя функция forEach не будет работать на устройствах iOS, в частности, на safari.Я пытаюсь решить эту проблему на некоторое время, и я не знаю, как это сделать ... Используя try / catch, эта ошибка:
TypeError: document.getElementsByTagName ("body")) [0] .classList.forEach не является функцией.(В 'document.getElementsByTagName ("body") [0] .classList.forEach (function (e) {var t = e; x.hasOwnProperty (t) && new x [t]})', 'document.getElementsByTagName ("body ") [0] .classList.forEach 'не определено)
Вот мой код:
import Header from './Components/Header';
import Shelf from './Components/Shelf';
import Home from './Pages/Home';
import Category from './Pages/Category';
import Product from './Pages/Product';
import NossasLojas from './Pages/NossasLojas';
import Checkout from './Pages/Checkout';
const Routes = {
"home": Home,
"single-product": Product,
"page-template-nossas-lojas": NossasLojas,
"archive": Category,
"woocommerce-cart": Checkout
};
export default class Pages {
constructor(){
new Header();
new Shelf();
try {
document.getElementsByTagName("body")[0].classList.forEach(function(e){
let pageName = e;
if(Routes.hasOwnProperty(pageName)){
new Routes[pageName]();
}
})
}
catch (err) {
alert(err);
}
}
}
Большое спасибо!:)