我有一组ajax函数来处理POST和GET上的发送和接收数据。但是我在Chrome上收到了这个警告:
<form is="iron-form" id="itemForm" method="post" action="/api/item/edit">
<input is="iron-input" name="id" type="hidden" value="{{item.id}}">
<paper-dropdown-menu label="Title" selected-item="{{selectedTitle}}">
<paper-menu class="dropdown-content">
<template is="dom-repeat" items="{{titles}}" as="o">
<paper-item value="[[o.id]]">[[o.name]]</paper-item>
</template>
</paper-menu>
</paper-dropdown-menu>
<input is="iron-input" name="title" type="hidden" value$="[[selectedTitle.value]]">
<paper-input name="firstName" label="First name" value="{{item.firstName}}"></paper-input>
<paper-button raised onclick="document.getElementById('itemForm').submit()">Save</paper-button>
</form>
我不清楚如何解决此警告,因为我不想忽视它以便在未来遇到问题。
这是我的ajax功能代码:
Synchronous XMLHttpRequest on the main thread is deprecated
这个警告的具体原因是什么?我将如何纠正它以符合公认的标准?
答案 0 :(得分:0)
调用send
方法时,请确保将最后一个参数(sync
)设置为false。如果设置为true,它将异步执行AJAX调用,因此不会向您发出警告。
同步调用确实已弃用,因为它在等待响应时完全阻塞主线程。在大多数情况下,这将完全阻止浏览器的UI,直到呼叫结束。