記Vue異步加載遇到的問題:TypeError: Cannot read property '__esModule' of undefined


問題描述

動態引入組件時,出現組件A能正常引入且頁面可顯示,組件B引入失敗。

  • Uncaught (in promise) TypeError: Cannot read property '__esModule' of undefined

引入代碼

let ActiveCp = () => ({
        component: import("." + index)
            .then(function (res) {
            //   if (curCp.newComponentName) {
            //   res.default.name = curCp.newComponentName
            // } ;
              console.log(res)
              return res.default;
            })
            .catch(function (e) {
            }),
        delay: 200,
        timeout: 30000,
      });

解決辦法:

在使用import語句時,指定文件后綴名

let ActiveCp = () => ({
        component: import("." + index + '.vue')  // 需指定文件后綴名,明確加載的組件文件。
            .then(function (res) {
            //   if (curCp.newComponentName) {
            //   res.default.name = curCp.newComponentName
            // } ;
              console.log(res)
              return res.default;
            })
            .catch(function (e) {
            }),
        delay: 200,
        timeout: 30000,
      });

問題出現原因

未知


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM