Uncaught TypeError: Cannot read property 'init' of undefined at HTMLAnchorElement.<anonymous>

Uncaught TypeError: Cannot read property 'init' of undefined at HTMLAnchorElement.<anonymous>

我正在使用 materialize css 制作此导航,并以两种方式配置它,sidenav 和 topnav。在顶部导航上,当我切换页面时,它很好,但是当它在侧边导航或移动导航中时,有一个问题

控制台:

这是控制台指向的地方

function sideNav() {
    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function () {
      if (this.readyState == 4) {
        if (this.status != 200) return;

        // Muat daftar tautan menu
        document.querySelector(".sidenav").innerHTML = xhttp.responseText;
        $(".dropdown-trigger").dropdown();
        $(".sidenav").sidenav();

        // Daftarkan event listener untuk setiap tautan menu
        document.querySelectorAll(".link2").forEach(function (elm) {
          elm.addEventListener("click", function (event) {
            // Muat konten halaman yang dipanggil
            var sidenav = document.querySelectorAll(".sidenav");
            M.Sidenav.getInstance(sidenav).init(sidenav);
            page = event.target.getAttribute("href").substr(1);
            loadPage(page);
          });
        });
      }
    };
    xhttp.open("GET", "/pages/sidenav.html", true);
    xhttp.send();
  }
  sideNav();

你能帮帮我吗?

检查 sidenav 实例,它是否加载到 DOM 上,因为这可能是问题所在。控制台记录 sidenav 变量并查看 select 查询是否 returns 任何内容。