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

React+MUI X Data Grid项目Netlify及本地生产构建报错求助

问题说明
  • 本地开发模式运行正常,但Netlify构建时报错:
./node_modules/@mui/x-data-grid/locales/daDK.js
Attempted import error: 'daDK' is not exported from '@mui/material/locale' (imported as 'daDKCore'). 
  • 本地生产模式构建同样失败,但错误信息不同:
Attempted import error: 'useGridApiContext' is not exported from '@mui/x-data-grid'
  • 怀疑useGridApiContext不属于@mui/x-data-grid社区版,但不解为何开发模式下能正常工作。
  • 移除useGridApiContext后,本地生产构建可正常运行,但Netlify构建仍失败,报错如下:
https://github.com/browserslist/browserslist#browsers-data-updating
Failed to compile.
./node_modules/@mui/x-data-grid/locales/daDK.js
Attempted import error: 'daDK' is not exported from '@mui/material/locale' (imported as 'daDKCore').
解决方法

关于useGridApiContext的问题

useGridApiContext的确是@mui/x-data-grid-pro(专业版)专属API,社区版@mui/x-data-grid不包含这个方法。开发模式能运行是因为React在开发环境下不会做严格的导出校验,或是本地依赖中间接引入了专业版包,但生产构建会做严格的树摇和导出检查,因此触发报错。

关于Netlify构建的daDK国际化问题

这个问题源于@mui/x-data-grid的丹麦语本地化文件依赖@mui/material/locale中的daDK导出,但你的@mui/material版本过低,未包含该本地化包。按以下步骤解决:

  1. 将@mui/material升级至支持丹麦语本地化的版本(至少v5.8.0,该版本新增了daDK locale)
  2. 确保@mui/x-data-grid与@mui/material版本一致,避免版本不兼容
  3. 清空Netlify的构建缓存:在Netlify控制台的构建设置中,找到“Clear cache and deploy site”选项,重新触发构建,避免旧依赖缓存引发问题

另外,也可以手动导入丹麦语本地化文件替代自动导入:

import { daDK as dataGridDaDK } from '@mui/x-data-grid/locales';
import { createTheme } from '@mui/material/styles';
import daDK from '@mui/material/locale/daDK';

const theme = createTheme(
  { /* 你的主题配置 */ },
  daDK,
  dataGridDaDK,
);

内容的提问来源于stack exchange,提问作者Derek Jin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 09:45:34