You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Symfony项目运行yarn watch报错:找不到@babel/preset-flow包

解决Symfony Encore + Babel编译错误:Cannot find package '@babel/preset-flow'

问题根源

你在webpack.config.js中配置了@babel/preset-flow这个Babel预设,但未安装对应的包——你之前安装的babel-preset-flow是Babel 6时代的旧包名,Babel 7+统一使用@babel/前缀的包。另外你配置了styled-jsx/babel插件,但从你的app.js代码来看,项目并未用到styled-jsx,这个配置属于多余项,反而可能引发额外问题。

解决步骤

1. 安装正确的@babel/preset-flow包

由于你使用yarn watch执行编译,推荐用yarn安装依赖(也可使用npm,保持包管理工具一致即可):

yarn add --dev @babel/preset-flow
# 或使用npm
npm install --save-dev @babel/preset-flow

2. 清理不必要的配置(可选但推荐)

如果你的项目不需要Flow类型检查和styled-jsx,直接删除webpack.config.js中以下两行多余配置:

// 移除这两行
babelConfig.presets.push('@babel/preset-flow');
babelConfig.plugins.push('styled-jsx/babel');

若确实需要使用这两个工具,保留配置并确保对应依赖安装完整即可。

3. 重新执行编译命令

完成上述操作后,重新运行编译命令:

yarn watch

M1芯片额外排查方案

M1芯片环境下偶尔会出现依赖安装不完整的情况,若上述步骤无效,可尝试:

  • 删除node_modules文件夹及package-lock.json/yarn.lock文件
  • 重新安装所有依赖:yarn install(或npm install)
  • 再次执行yarn watch

内容的提问来源于stack exchange,提问作者A. Cedano

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 00:32:42