将 antd 与 react-boilerplate 集成
Integrating antd with react-boilerplate
我将其添加到生产配置中:
babelQuery: {
plugins: [["import", { libraryName: "antd", style: true }]],
},
但我仍然收到类似 ReferenceError: Menu is not defined.
的错误,我是不是遗漏了什么?当我将相同的内容添加到开发配置时,在本地一切正常,所以我有点困惑。
我目前遇到了完全相同的问题。所以我会在这里添加额外的信息。
我也参考了下一页的信息来设置 ant-design 工具包:
https://ant.design/docs/react/use-with-create-react-app
webpack.dev.babel 包含以下 babelQuery 并且工作正常:
babelQuery: {
presets: ['babel-preset-react-hmre'].map(require.resolve),
plugins: [['import', { libraryName: 'antd', style: true }]],
},
开发环境运行良好
但是,当像这样将相同的插件配置添加到 webpack.prod.babel 时:
babelQuery: {
plugins: [['import', { libraryName: 'antd', style: true }]],
},
在 运行 生产构建之后加载页面时,我收到类似@userinev 的错误。
Uncaught ReferenceError: Menu is not defined
加载第一个从 antd 库加载的组件时出现问题。
从 prod-config 中删除插件配置时,应用正在加载,但缺少样式。
更新:
Menu.Item 中的点 (.) 是生产构建中的问题。
解决方法是创建一个 'alias',例如
const Item = Menu.Item;
参见:https://github.com/ant-design/ant-design/issues/5060#issuecomment-283339199
或者,您可以删除 导致错误的 babel 插件 package.json 中的样板文件:
删除这个:
"plugins": [
"transform-react-inline-elements"
]
我将其添加到生产配置中:
babelQuery: {
plugins: [["import", { libraryName: "antd", style: true }]],
},
但我仍然收到类似 ReferenceError: Menu is not defined.
的错误,我是不是遗漏了什么?当我将相同的内容添加到开发配置时,在本地一切正常,所以我有点困惑。
我目前遇到了完全相同的问题。所以我会在这里添加额外的信息。
我也参考了下一页的信息来设置 ant-design 工具包: https://ant.design/docs/react/use-with-create-react-app
webpack.dev.babel 包含以下 babelQuery 并且工作正常:
babelQuery: {
presets: ['babel-preset-react-hmre'].map(require.resolve),
plugins: [['import', { libraryName: 'antd', style: true }]],
},
开发环境运行良好
但是,当像这样将相同的插件配置添加到 webpack.prod.babel 时:
babelQuery: {
plugins: [['import', { libraryName: 'antd', style: true }]],
},
在 运行 生产构建之后加载页面时,我收到类似@userinev 的错误。
Uncaught ReferenceError: Menu is not defined
加载第一个从 antd 库加载的组件时出现问题。
从 prod-config 中删除插件配置时,应用正在加载,但缺少样式。
更新: Menu.Item 中的点 (.) 是生产构建中的问题。 解决方法是创建一个 'alias',例如
const Item = Menu.Item;
参见:https://github.com/ant-design/ant-design/issues/5060#issuecomment-283339199
或者,您可以删除 导致错误的 babel 插件 package.json 中的样板文件:
删除这个: "plugins": [ "transform-react-inline-elements" ]