gpt4 book ai didi

javascript - "Object doesn' t support property or method 'find' "in IE11 with Babel and Webpack

转载 作者:行者123 更新时间:2023-11-30 20:28:35 27 4
gpt4 key购买 nike

我在 IE11 中使用 Webpack 和 Babel 时出现一些奇怪的行为。当前,出现的问题是以下错误消息:

SCRIPT438:对象不支持“查找”属性或方法

这只发生在 Internet Explorer 中,奇怪的是在本地运行代码时不会发生,只有在发布时才会发生。

const getColumnByName = (columns, columnName) => {   
return columns.find((col) => col.Name === columnName);
}

通过使用断点,我可以看到代码在传递对象数组之前使用空数组调用 columns.find 3 次。仅在第 4 次抛出错误。在 IE 控制台中,我可以在上述函数中运行以下代码行,以尝试进一步隔离问题。

Array.isArray(columns)
#=> true

Array.prototype.find
#=> function (predicate) { ...

[1,2,3].find(function(el){return el === 2})
#=> 2

columns.length
#=> 17

columns.find(function(e){return true})
#=> Object doesn't support property or method 'find'

对我来说都很奇怪。

下面是我的 webpack.config 文件,以防有帮助。

/// <binding ProjectOpened='Watch - Development' />

module.exports = {
entry: [
'babel-polyfill',
'./Scripts/App.js',
],
output: {
filename: 'Scripts/ReactBundle/bundle.js'
},
resolve: {
extensions: ['.Webpack.js', '.web.js', '.js', '.jsx'],
mainFields: ["main"]
},
module: {
rules: [
{
test: /\.css$/,
use: [ 'style-loader', 'css-loader' ]
},
{
test: /\.js$/,
exclude: /(node_modules|bower_components)/,
loader: 'babel-loader',
query:
{
presets: ['react', 'es2017', 'es2015', 'stage-2'],
plugins: ['transform-class-properties']
}
},
]
},
}

在此先感谢您的帮助或输入。

最佳答案

columns 是否可能是一个类型 NodeList或者其他不包含 find 方法但在特定浏览器中包含 length 属性的东西。你能告诉我们你定义 columns 变量的部分吗?

如果是这样,您可以使用 Array.from(columns); 将其转换为数组。

关于javascript - "Object doesn' t support property or method 'find' "in IE11 with Babel and Webpack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50607275/

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