Nuxt js/Babel 'SyntaxError: 意外关键字 'const'.在严格模式下不支持 Const 声明。



我有一个我在nuext .js上创建的web应用程序,但我注意到在一些浏览器(如Safari, IE)中存在编译错误,我认为这是Babel配置的错误,然后我运行npm run buildES6未编译,并且我在控制台上有错误对于交叉浏览测试,我使用的是Browserstack我在控制台中有以下错误:

Unexpected token '...'. Expected a property name

SyntaxError: Unexpected keyword 'const'. Const declarations are not supported in strict mode.

如何配置Babel来编译ES6?

显然,您的代码不能在Safari v10及以下版本上工作。看看这里的一些统计数据:

  • https://gs.statcounter.com/browser-version-partially-combined-market-share月- 202007 - 202107
  • https://www.w3schools.com/browsers/browsers_safari.asp
  • https://caniuse.com/?search=flex
  • https://en.wikipedia.org/wiki/Safari_version_history Safari_10_2

看起来Safari与少数版本一起使用,但这些版本主要是v13和v14。那些比你不支持的要现代得多。
Safari v10实际上是从2007年开始的,所以我可以肯定地说,你可以完全抛弃这个版本。

即使Safari不是一个常青树的浏览器(意思是updating-itself像Firefox或Chrome),人们仍然使用它不是一个旧的版本。

你需要记住,如果你想支持一个老版本,你将严重影响整个网站对每个用户的整体性能。好吧,0.5%的人会有更好的体验(那些停留在2007年的人),但其他人将需要承担旧的巴别塔翻译版本的重量。

你可以做两个bundle(一个是现代的,另一个是老旧的浏览器),并根据它们是否支持ES模块来提供其中一个或另一个。我找不到Google/HTTP 203讨论这个。
但在我看来,对于一个超级小的人口来说,这是很多工作(不是那么微不足道),我宁愿忽略这一点,专注于更重要的事情来处理。

就连a11y也在惠及更多的人。即便如此,它的优先级也可能低于Safari v10。
这是我的行李。如果我找到视频,我可能会更新我的答案。

相关内容

  • 没有找到相关文章