vue IE兼容性问题汇总

1、ES6语法不支持

解决方法:

引入babel-polyfill

npm install --save bable-polyfill

webpack.base.conf.js中修改为

app: ['event-source-polyfill', 'babel-polyfill', './src/main.js']

main.js 中引入

import 'babel-polyfill';

2、GET非首次请求时,IE默认使用缓存而不是去后台请求

解决方法:

在request拦截时,加时间戳

service.interceptors.request.use(config => {
  // Do something before request is sent
  // // 时间戳
  if (config.method === 'get') {
    config.params = {
      t: Date.parse(new Date()) / 1000,
      ...config.params
    }
  }
  return config;
}, error => {
  // Do something with request error
  console.log(error); // for debug
  Promise.reject(error);
})

3、上传文件时,文件类型检查。如果为.apk文件,则file.type为" ".而jpg/png等文件正常

导致上传apk文件时,会报类型检查错误

解决方法:

export function validateApk(file) {
  if (file.type === 'application/vnd.android.package-archive') {
    return true;
  } else {
    if (file.name.substring(file.name.lastIndexOf('.') + 1) === 'apk') {
      return true;
    }
  }
  return false;
}

 

4、上传文件时,后台读取file.getName或者file.getOriginalName为全路径名称

解决方法:

后台去处理,如果为全路径,则进行字符串截取

 

你可能感兴趣的:(错误总结)