详解使用VueJS开发项目中的兼容问题
程序员文章站
2022-03-27 08:14:08
我们开发的项目,兼容到ie9+,以下所提到的问题都是在这个项目中所遇见的问题,如有错误,或者理解不正确的地方,望多多指点。
1. kingeditor,ie下提示‘对象不...
我们开发的项目,兼容到ie9+,以下所提到的问题都是在这个项目中所遇见的问题,如有错误,或者理解不正确的地方,望多多指点。
1. kingeditor,ie下提示‘对象不支持movetoelementtext属性或方法'
解决办法:
我用的kingeditor是v4.1.10版本
修改kingeditor.js的5844行:
if (_ie) { var rng = cmd.range.get(true); rng.movetoelementtext(div[0]); rng.select(); rng.execcommand('paste'); e.preventdefault(); }
修改为:
if (_ie) { var rng = cmd.range.get(true); try { rng.movetoelementtext(div[0]); rng.select(); rng.execcommand('paste'); e.preventdefault(); } catch (e) { } }
在压缩kingeditor.js后替换kingeditor-min.js即可
2.vue组件的长字符串拼接
在ie不兼容长字符串拼接,需要使用字符串拼接
3.axios.js的post请求。
在chrome下
var newparams = new urlsearchparams(); newparams.append('type',vm.typenum); newparams.append('num','20'); newparams.append('curpage',vm.cur); axios.post(url,newparams).then(function(res){ }).catch(function(){});
在ie下需要
axios({ method: 'post', url: '/f/api/list/news', data: { type: vm.typenum, num: 4, curpage: vm.cur }, transformrequest: [function (data) { var ret = '' for (var it in data) { ret += encodeuricomponent(it) + '=' + encodeuricomponent(data[it]) + '&' } return ret }], headers: { 'content-type': 'application/x-www-form-urlencoded' } }).then(function (response) { vm.articel_list = response.data.informations; vm.all = math.ceil(response.data.totalnum/4); },function (responese) { // console.log(responese); })
4.在ie下,提示“promise”未定义
需要引入polyfill.js文件 下载地址:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。