最近接手一个React项目,在IE下碰到了俩问题
IE11报错如下:
跟踪一下之后,发现是一些其他的npm包里面用到了startsWith这个方法,可以自己polyfill一下:
if (!String.prototype.startsWith) { String.prototype.startsWith = function (search, pos) { return this.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search } }
不过加prototype的方法毕竟不好,可以通过引入@babel/polyfill解决,在入口文件中引入import '@babel/polyfill';
IE11问题解决后,IE10又出问题了。。。
犯了stackoverflow和github的很多帖子之后,在这个帖子里找到,发现是Object.setPrototypeOf的问题,Object.setPrototypeOf说是支持了IE9-11, 实际在源码里只实现了11+(https://github.com/paulmillr/es6-shim/blame/master/README.md#L78)
解决办法可以是在polyfill url后加上excludes=Object.setPrototypeOf, 或者自己实现Object.setPrototypeOf方法,我这里引入了一个库setprototypeof,然后在入口文件中加上Object.setPrototypeOf = require('setprototypeof');
其实这个库里的实现代码非常少, 可以简单看下
'use strict' /* eslint no-proto: 0 */ module.exports = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties) function setProtoOf (obj, proto) { obj.__proto__ = proto return obj } function mixinProperties (obj, proto) { for (var prop in proto) { if (!obj.hasOwnProperty(prop)) { obj[prop] = proto[prop] } } return obj }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍详解Springboot+React项目跨域访问问题,包括了详解Springboot+React项目跨域访问问题的使用技巧和注意事项,需要的朋友参考一下 一、开发环境 框架:springboot 1.5.10.RELEASE 开发工具:IDEA JDK:1.8 前端框架:React 15.6.1 浏览器:Chrome浏览器 二、跨域问题 本地使用ajax访问localhost:808
本文向大家介绍详解Vue-cli3 项目在安卓低版本系统和IE上白屏问题解决,包括了详解Vue-cli3 项目在安卓低版本系统和IE上白屏问题解决的使用技巧和注意事项,需要的朋友参考一下 最近遇到一个问题,用 Vue 开发的项目在最近两年新出的安卓手机上没问题,在三四年前的旧手机上出现白屏问题。分析一下应该是安卓系统版本的原因,目前已知的是Android 6.0 以上都 OK,6.0 以下就不行了
本文向大家介绍React 使用browserHistory项目访问404问题解决,包括了React 使用browserHistory项目访问404问题解决的使用技巧和注意事项,需要的朋友参考一下 最近项目里面用到了React但是发布到iis站点之后,路由地址 刷新访问直接404错误。查阅资料之后发现是iis缺少配置URL重写 的问题导致的。下面我们来图形化配置,简单的配置下IIS 打开IIS使用
本文向大家介绍详解使用VueJS开发项目中的兼容问题,包括了详解使用VueJS开发项目中的兼容问题的使用技巧和注意事项,需要的朋友参考一下 我们开发的项目,兼容到IE9+,以下所提到的问题都是在这个项目中所遇见的问题,如有错误,或者理解不正确的地方,望多多指点。 1. KingEditor,IE下提示‘对象不支持moveToElementText属性或方法' 解决办法: 我用的kingEditor
本文向大家介绍详解React项目的服务端渲染改造(koa2+webpack3.11),包括了详解React项目的服务端渲染改造(koa2+webpack3.11)的使用技巧和注意事项,需要的朋友参考一下 因为对网页SEO的需要,要把之前的React项目改造为服务端渲染,经过一番调查和研究,查阅了大量互联网资料。成功踩坑。 选型思路:实现服务端渲染,想用React最新的版本,并且不对现有的写法做大的
本文向大家介绍详解ASP.NET Core部署项目到Ubuntu Server,包括了详解ASP.NET Core部署项目到Ubuntu Server的使用技巧和注意事项,需要的朋友参考一下 基于上一篇成功安装Ubuntu Server 16.10的基础上,接下来继续我们ASP.NET Core项目的部署之旅! 只是对于这些年整天和Windows打交道的我,初次使用Linux确实有点费劲。 但是为