记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