Element Plus: Module not found:

2021-12-28  本文已影响0人  死宅程序员

问题

在 Webpack 5 + Vue 3 + Element Plus 工程下遇到如此错误:

Element Plus: Module not found: Error: Can't resolve 'lodash/debounce'

分析

为了按需加载,采用如下 plugin:

const ElementPlus = require('unplugin-element-plus/webpack').default;

查阅对应文档了解到,element-plus 模块中有 eslib两种资源,
默认引用的是 es中的,资源文件扩展名为.mjs
es中具体组件代码依赖了lodash/debouce,这个资源对应的文件扩展名是'.js'。
此时需要 webpack 的resolve.fullySpecified配置加持,文档参考

具体设置为rules添加如下规则:

{
rules:[ {
          test: /\.mjs$/i,
          resolve: {
            byDependency: {
              esm: {
                fullySpecified: false
              }
            }
          }
        },
}]
}
上一篇下一篇

猜你喜欢

热点阅读