Vite2 + React + Antd 踩坑指南

转载请注明出处,点击此处 查看更多精彩内容。

process is not defined

报错:

Uncaught ReferenceError: process is not defined

解决方案:

// 使用 import.meta.env 替换 process.env
process.env --> import.meta.env
# .env

# 字段名必须以 VITE_ 开头,否则不会暴露到 import.meta.env 中
VITE_APP_VERSION = "1.0.0"

Property ‘env’ does not exist on type ‘ImportMeta’

报错:

Property 'env' does not exist on type 'ImportMeta'

解决方案:

# tsconfig.json

{
  "compilerOptions": {
    "types": ["vite/client"],
    ...
  }
}       

_interopRequireDefault is not a function

报错:

Uncaught TypeError: _interopRequireDefault is not a function
    at Form.js:24
    at chunk.2VCUNPV2.js?v=9e816b32:4
    at dep:antd_lib_form_Form:1

解决方案:

// useForm 从错误的包导入,导致报错
// import { useForm } from 'antd/lib/form/Form'
// import { useForm } from 'antd/es/form/Form'
// const [form] = useForm()

// 通过 Form 调用,不会出现导包错误的问题
import { Form } from 'antd'
const [form] = Form.useForm()

global is not defined

报错:

Uncaught ReferenceError: global is not defined
    at setImmediate.js:15
    at chunk.2VCUNPV2.js?v=e11687d4:4
    at editOnBeforeInput.js:25
    at chunk.2VCUNPV2.js?v=e11687d4:4
    at DraftEditorEditHandler.js:16
    at chunk.2VCUNPV2.js?v=e11687d4:4
    at DraftEditor.react.js:32
    at chunk.2VCUNPV2.js?v=e11687d4:4
    at Draft.js:24
    at chunk.2VCUNPV2.js?v=e11687d4:4

解决方案:

<!-- index.html -->

<html>
  ...
  <body>
    <script>
      global = globalThis
    </script>
    ...
  </body>
</html>
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值