Ecmascript 6 对象没有';t支持属性或方法';查找';在IE 11中
我的Javascript项目中的一些find和findIndex方法在IE11中不起作用。 这里是package.jsonEcmascript 6 对象没有';t支持属性或方法';查找';在IE 11中,ecmascript-6,babeljs,polyfills,Ecmascript 6,Babeljs,Polyfills,我的Javascript项目中的一些find和findIndex方法在IE11中不起作用。 这里是package.json { "name": "form_builder_p1_old", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "build": "babel js -d lib" }, "author": "", "license": "ISC",
{
"name": "form_builder_p1_old",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"build": "babel js -d lib"
},
"author": "",
"license": "ISC",
"devDependencies": {
"@babel/cli": "^7.4.4",
"@babel/core": "^7.4.5",
"@babel/plugin-transform-runtime": "^7.4.4",
"@babel/plugin-transform-spread": "^7.2.2",
"@babel/preset-env": "^7.4.5"
},
"dependencies": {
"@babel/polyfill": "^7.4.4",
"@babel/runtime": "^7.4.5",
"core-js": "^3.0.1",
"lodash": "^4.17.11",
"regenerator-runtime": "^0.13.2"
}
}
以及
{
"presets":[
[
"@babel/preset-env",
{
"useBuiltIns": "entry",
"corejs": "^3.0.1"
}
]
],
"plugins": ["@babel/plugin-transform-spread"]
}
Babel在IE中运行良好,但find方法不起作用。
我尝试过polyfil,但没有成功,
这是我的项目总监
请帮帮我
谢谢我通过为core添加以下行解决了这个问题-js@3.
import 'core-js/stable';
import 'regenerator-runtime/runtime';
见@
另一个解决方案
手动添加部分模块
import 'core-js/modules/es.array.find';
我遇到了同样的情况。也许您可以使用的MDN文档中的手写polyfill
//https://tc39.github.io/ecma262/#sec-array.prototype.find
if(!Array.prototype.find){
Object.defineProperty(Array.prototype,“find”{
值:函数(谓词){
//1.设O为?ToObject(该值)。
if(this==null){
抛出类型错误(“'this'为空或未定义”);
}
var o=对象(此);
//2.设len为?ToLength(?Get(O,“length”))。
var len=o.length>>>0;
//3.如果IsCallable(谓词)为false,则抛出TypeError异常。
if(类型谓词!=='function'){
抛出类型错误('谓词必须是函数');
}
//4.如果提供了thisArg,则T为thisArg;否则T为未定义。
var thisArg=参数[1];
//5.设k为0。
var k=0;
//6.当k