Object doesn't support property or method 'includes'
因为IE11不支持它:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes#Browser_compatibility
if (!String.prototype.includes) {
String.prototype.includes = function(search, start) {
'use strict';
if (typeof start !== 'number') {
start = 0;
}
if (start + search.length > this.length) {
return false;
} else {
return this.indexOf(search, start) !== -1;
}
};
}
我已经把它加到我的
index.jsx
已经解决了任何
.includes()
除了一个我不知道为什么。
removeInfectedFiles() {
let { filesAccepted } = this.state;
const { infected } = this.props.upload.data;
this.setState({
...this.state,
filesAccepted: filesAccepted.filter(
file => !infected.includes(file.key)
)
})
var filesInfected = [];
_.map(infected, i => {
filesInfected.unshift(
<p key={ i }>{ i }</p>
)
});
this.setState({
filesInfected
})
}
除IE 11外,其他浏览器都可以使用。
在将文件写入服务器之前,会对其进行病毒扫描。如果某个文件的服务器响应的是受感染的文件列表,则应该是“this.props.upload.data…”。。。显然不会把它们写到服务器上。这将从成功提交的文件列表中删除文件名。