css - 主线程上的同步 XMLHttpRequest 已弃用,因为它具有不利影响

标签 css less saas

当我在 chrome 中运行 less(2.5 版)时,它会抛出一个错误:

主线程上的同步 XMLHttpRequest 已被弃用,因为它会对最终用户的体验产生不利影响。如需更多帮助,请查看 http://xhr.spec.whatwg.org/。

经过一些研究,我认为原因是因为默认情况下 async 被设置为 false。 less.org 文档在异步类别下显示以下内容。

代码给定:

<script>
  less = {
    env: "development",
    logLevel: 2,
    async: false, //default is false
    fileAsync: false,
    poll: 1000,
    functions: {},
    dumpLineNumbers: "comments",
    relativeUrls: false,
    globalVars: {
      var1: '"string value"',
      var2: 'regular value'
    },
    rootpath: ":/a.com/"
  };
</script>

由于我的要求是将 async 设置为 true 我在加载 less.js 之前添加了以下代码,错误似乎消失了。

使用代码:

   <script>
     less = {
       async: true
     };
   </script>

我的问题:是否可以按照 less.org 文档执行此操作 (CodeUsed) 或我是否必须使用完整代码 (CodeGiven)?问的原因是因为我读到设置 async = true 对开发来说很糟糕吗?

最佳答案

我会说是的。保留 async = true

正如警告所说,在主线程上运行它不是一个好主意,因为这可能会带来糟糕的用户体验。当浏览器卡住时,大多数用户不喜欢它。您尤其不希望您的网站在服务器出现故障或运行缓慢时卡住,因为您的用户体验会很差。

异步运行您的请求是一种更好、更易于管理的解决方案。

关于css - 主线程上的同步 XMLHttpRequest 已弃用,因为它具有不利影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29687293/

相关文章:

css - 如何在 Aurelia 中动态更改元素主题

jquery - 悬停 Action 后如何保存CSS样式

javascript - Bootstrap如何关闭所有下拉菜单onclick

javascript - 添加事件以提交按钮

jquery - iOS 地址栏固定在视口(viewport)错误的顶部

database - 用于在云上构建企业 Web (RIA) 应用程序的数据库架构(单一数据库与客户端特定数据库)

javascript - 是否有一个插件可以在我的网页中显示 HTML 代码

html - 如何动态填充无框网格?

php - lessphp fatal error : load error: failed to find error after migrating wordpress website to new server

ruby-on-rails - 付款失败后阻止用户使用 SaaS 应用程序的最佳方法是什么