admin 管理员组

文章数量: 887021

safari浏览器的一些兼容性问题总结

vue项目开发完毕之后在chrome、firfox等浏览器表现正常,但在safari浏览器中跳转首页时报错导致页面展示空白,报错信息提示是语法错误。猜测是safari对于部分es6语法不兼容导致的,于是在vue.config.js中引入babel-polyfill插件

chainWebpack:(config) => {
    config.entry('main').add('babel-polyfill'),
},

此时仍然有报错信息,但报错信息改变了:Invalid regular expression: invalid group specifier name。
查询之后发现在safari中打包后的js不支持原生的双斜线格式的正则表达式。
错误的定义方式:
let regExp = /XXX/g;
正确的定义方式:
let regExp = new RegExp(“XXX”, ‘g’);

再看页面此时已经可以正常跳转了,但之后又意外发现部分页面在safari浏览器加载时异常,发现又是正则的锅:Invalid regular expression
查询之后发现safari中不支持使用正则表达式的零宽断言

本文标签: 浏览器 兼容性问题 Safari