詳解使用VueJS開發(fā)項目中的兼容問題
我們開發(fā)的項目,兼容到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文件 下載地址: https://github.com/babel/babel/tree/master/packages/babel-polyfill
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
關于element-ui中el-form自定義驗證(調用后端接口)
這篇文章主要介紹了關于element-ui中el-form自定義驗證(調用后端接口),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07