webpack.config.js配置遇到Error: Cannot find module '@babel/core'&&Cannot find module '@babel/plugin-tran...

博客讲述了在配置webpack.config.js自动打包时,出现Error: Cannot find module '@babel/core'错误。最初以为是babel-core未安装,重装无果。后发现babel-loader版本不同,回退到旧版本@7.1.5后成功。还提到两种解决方案,即回退低版本或更新到最高版本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 问题描述

在配置webpack.config.js自动打包的时候,出现Error: Cannot find module '@babel/core'错误
最初以为是babel-core没有安装上。重装了好几遍babel-core还是不行。对照以前的项目,发现babel-loader的版本不一样,之前的是@7.1.5版本,而现在是@8.0.0版本。
1414709-20180829150515254-1814341987.png

二、 解决方法

带着半信半疑的心情安装回@7.1.5版本

npm uninstall babel-loader
npm install babel-loader@7.1.5

npm run build发现成功了!
有点纳闷,距离上次安装不过才几天,就更新成babel-loader@8.0.0。而且还不支持原来的配置了。网上没有找到方法解决,原理也还不清楚。先mark一下,以后解决了@8.0.0的这个问题再回来补充。

附上webpack.config.js代码:

var webpack = require('webpack');
var path = require('path');
var HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
    entry: __dirname + '/client/root/index', //入口文件
    output: {
        path: path.join(__dirname + '/dist'),
        filename: 'bundle.js',  //打包后文件名
    },

    module: {
        loaders : [{
            test :/(\.jsx|\.js)$/,
            exclude : /node_modules/,
            loader :'babel-loader',
            options:{
                presets:[
                    "env", "react", 
                ]
            }
        },
        {
            test: /\.css$/,
            loader: 'style-loader!css-loader'
        },
        {
            test: /\.less$/,
            loader: 'style-loader!css-loader!less-loader'
        },
        {
            test: /\.(jpg|.png)$/,
            loader: 'url-loader'
        }
        ]
    },

    plugins: [
        //打包引用模板
        new HtmlWebpackPlugin({
            template: __dirname + '/client/views/template.html'
        }),
    ]
}

关于babel-loader@8.0.0出现错误原因已经找到,感谢@Sky__zt的回答.
(忘了去看官方文档了)

官方默认babel-loader | babel 对应的版本需要一致: 即babel-loader需要搭配最新版本babel

1414709-20181005155538050-1481730001.png

具体请参考:《npm_babel-loader》

总结:

两种解决方案:

  1. 回退低版本

npm install -D babel-loader@7 babel-core babel-preset-env

  1. 更新到最高版本:

npm install -D babel-loader @babel/core @babel/preset-env webpack

转载于:https://www.cnblogs.com/soyxiaobi/p/9554565.html

### 关于无法找到模块 `@dcloudio/webpack-uni-pages-loader/package.` 的解决方案 当遇到类似于 `Cannot find module` 的错误时,通常是因为依赖未正确安装或者路径配置存在问题。以下是针对该问题的具体分析和解决办法: #### 1. 确认项目中的依赖是否已完全安装 如果在运行项目时报错提示缺少模块,则可能是某些必要的依赖项尚未被正确安装到项目的 `node_modules` 中。可以通过重新初始化依赖来解决问题。 ```bash rm -rf node_modules package-lock.json npm cache clean --force npm install ``` 上述命令会清除现有的 `node_modules` 文件夹以及缓存数据,并强制重新下载所有的依赖包[^1]。 #### 2. 验证网络环境下的镜像源设置 由于国内访问国外资源可能存在速度慢甚至失败的情况,因此建议切换成更稳定的 npm 源地址(如淘宝镜像)。可以采用如下方式更改全局默认 registry 地址为阿里云提供的 NPM 镜像服务: ```bash npm config set registry https://registry.npmmirror.com/ ``` 此操作能够有效减少因为网络不稳定而导致的模块拉取失败现象[^3]。 #### 3. 特定插件的手动指定版本号 有时即使完成了正常的依赖加载流程仍会出现特定库缺失的现象,这可能涉及到不同工具链之间存在兼容性差异的问题。对于本案例提到的 `@dcloudio/webpack-uni-pages-loader`, 如果常规手段不起作用的话,尝试显式声明其确切版本再执行更新动作: ```json { "dependencies": { "@dcloudio/webpack-uni-pages-loader": "^最新稳定版" } } ``` 之后再次调用 `npm update` 或者直接通过 yarn 来管理这些变更后的定义文件内容. 另外值得注意的是,在跨平台迁移过程中(比如从 Windows 到 Linux),除了基本组件外还需要关注操作系统特有的一些二进制扩展部分是否会受到影响;例如之前提及过的 sass 编译器之类的场景就需要额外留意对应系统的支持情况[^2]. 最后提醒一点就是每次做完较大规模调整之后都应该记得清理旧残留物并进行全面测试验证整个构建链条恢复正常工作状态后再投入实际生产环境中去部署应用哦! ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值