FormData.entries() 在 Internet Explorer 11 中?
FormData.entries() in Internet Explorer 11?
如官方文档所示,IE11 根本不支持 FormData
,或者至少我需要的支持还不够。
在我的代码中,我必须遍历 FormData
元素的条目。对于这个任务,我使用了 entries()
函数,它在 IE 上不起作用,给我错误
Object doesn't support property or method 'entries'
我已经通过 npm 添加 https://github.com/jimmywarting/FormData 到我的项目中,并将其添加到我在 webpack.config.js
中的条目,然后看起来像这样。
const webpack = require("webpack");
const path = require("path");
module.exports = {
entry: {
app: ["babel-polyfill", "formdata-polyfill", "whatwg-fetch", "./Scripts/Modules/index.ts"]
},
}
在控制台中我可以看到 formdata.min.js
已加载。由于错误仍然存在,因此它似乎没有按应有的方式使用 polyfill。它仍然使用失败的默认值。
我如何告诉我的 TypeScript
代码使用 polyfill-version 而不是浏览器的默认实现,因为包没有提供任何 d.ts
文件?
这可能吗?如果不是 - 这种情况的可能解决方法是什么?
这是 FormData
对象在 dev-tools 中的样子:
只有 append
作为方法定义
不确定是否对您有帮助,但我今天遇到了这个问题,似乎通过 NPM 提供的 polyfill 版本没有完全覆盖 FormData 对象,因此不适合 IE11 或 Edge。
我发现切换到库的 V3 修复了这个问题。为此,我从 github 存储库中获取了 FormData.js 文件的内容,并将其作为组件添加到我自己的自定义 JavaScript 代码中。
我使用 WebPack,遇到了 IE11 的一些其他问题,仍在调查中。
让我知道如何直接包含内容而不是从 NPM 获取内容。
如官方文档所示,IE11 根本不支持 FormData
,或者至少我需要的支持还不够。
在我的代码中,我必须遍历 FormData
元素的条目。对于这个任务,我使用了 entries()
函数,它在 IE 上不起作用,给我错误
Object doesn't support property or method 'entries'
我已经通过 npm 添加 https://github.com/jimmywarting/FormData 到我的项目中,并将其添加到我在 webpack.config.js
中的条目,然后看起来像这样。
const webpack = require("webpack");
const path = require("path");
module.exports = {
entry: {
app: ["babel-polyfill", "formdata-polyfill", "whatwg-fetch", "./Scripts/Modules/index.ts"]
},
}
在控制台中我可以看到 formdata.min.js
已加载。由于错误仍然存在,因此它似乎没有按应有的方式使用 polyfill。它仍然使用失败的默认值。
我如何告诉我的 TypeScript
代码使用 polyfill-version 而不是浏览器的默认实现,因为包没有提供任何 d.ts
文件?
这可能吗?如果不是 - 这种情况的可能解决方法是什么?
这是 FormData
对象在 dev-tools 中的样子:
只有 append
作为方法定义
不确定是否对您有帮助,但我今天遇到了这个问题,似乎通过 NPM 提供的 polyfill 版本没有完全覆盖 FormData 对象,因此不适合 IE11 或 Edge。
我发现切换到库的 V3 修复了这个问题。为此,我从 github 存储库中获取了 FormData.js 文件的内容,并将其作为组件添加到我自己的自定义 JavaScript 代码中。
我使用 WebPack,遇到了 IE11 的一些其他问题,仍在调查中。
让我知道如何直接包含内容而不是从 NPM 获取内容。