基於dva@2和ant design的react專案IE相容調整

專案要求相容IE9,在實際應用中出現以下問題:
(一)引用“babel/polyfill”後出現空白頁面並且在按下F12後有報錯:這裡寫圖片描述

查詢資料後修改如下:
1:重新安裝 “@babel/polyfill”: “^7.0.0-beta.51”,
2:在index.js中引用

import '@babel/polyfill';
Object.setPrototypeOf = require('setprototypeof');

3:新建檔案setprototypeof.js,程式碼為:

module.exports =
Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties)
function setProtoOf(obj, proto) {
obj.__proto__ = proto
return obj
}
function mixinProperties(obj, proto) {
// make getPrototypeOf helper work
Object.defineProperty(obj, '__proto__', {
value: proto,
})
for (var prop in proto) {
if (!obj.hasOwnProperty(prop)) {
obj[prop] = proto[prop]
}
}
return obj
}

(二)如果按下F12頁面顯示正常否則仍是空白頁面,在index.js中新增程式碼

window.console = window.console || (function(){ 
var c = {}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function(){}; 
return c; 
})();

問題解決
參考:https://blog.csdn.net/koala25/article/details/70230046

(三)所有的:before,:after都不可用,需要使用::before,::after

(四)ant design 輸入框中placeholder樣式不一致

這個問題還在解決中,如果大家有好的解決方法,歡迎留言~