gpt4 book ai didi

javascript - Webpack require 方法返回意外的对象

转载 作者:行者123 更新时间:2023-11-28 06:21:26 24 4
gpt4 key购买 nike

我最近将 webpack 从版本 1.12.9 升级到 1.12.13,并将 babel 从 5 升级到 6,升级后部分代码中断:

const DevTools = require('../components/DevTools.js')
DevTools.instrument()

我收到以下错误:

Uncaught TypeError: DevTools.instrument is not a function

然后我在调用 instrument() 之前添加了 console.log(DevTools),这是 Chrome 控制台中的输出:

> Object {__esModule: true}
> __esModule: true
> default: DevTools(props, context)
> __proto__: Object

为了解决此问题,我使用了 import 而不是 require:

import DevTools from '../components/DevTools.js'

再次打印 console.log(DevTools) 会给出以下结果:

DevTools(props, context) {
_classCallCheck(this, DevTools);
var _this = _possibleConstructorReturn(this, _Component.call(this, props, context));
if (!props.store && !…

这正是我想要导入的并且现在工作正常。

有人知道为什么会发生这种情况吗?这个错误是因为webpack或者babel升级导致的吗?

最佳答案

您也可以通过添加 default 有条件地要求它们,而不是总是导入 DevTools

const DevTools = require('../components/DevTools.js').default;

关于javascript - Webpack require 方法返回意外的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35497618/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com