项目在chrome下运行没问题,在safari下报错页面打不开。Invalid regular expression: invalid group specifier name

[Warning] [vue-router] Failed to resolve async component default: SyntaxError: Invalid regular expression: invalid group specifier name

[Warning] [vue-router] uncaught error during route navigation:

经排查 导致这个情况的原因是项目中使用了正则表达式的反向预查: ?<= 和 ?<! 

而我们的safari浏览器居然不支持这两种方式

解决方案:用    replace(/([^xxxx])(>)/g, "$1>") 替换  replace(/(?<!xxxx)>/g, ">");

                        replace(/(xxxx)(>)/g, '$1>'). 替换 replace(/(?<=xxxx)>/g, ">");

若不是匹配替换 只查找的话 可以用.  /(?:\/)(xxxx)/  代替 /(?<=\/)(xxxx)/  取$1

借鉴了stackoverflow上一位大佬的问题 附上链接


                    

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容