我使用的Rails 5.2.2和我想设置超时使用Rails UJS所以上显示请求超时的警报消息时。
我阅读了Official Guide for working with JavaScript和answer related to this issue,但是指南没有写任何有关超时的内容,并且答案是有日期的。
我正在使用的.html.erb
视图文件中:
<input id="element_dom_id" type="checkbox" data-remote="true" data-url="/a_url" data-params="key=value" data-method="patch">
<script type="text/javascript">
document.getElementById('element_dom_id').addEventListener(
'ajax:success', function(event) {
...
}
);
document.getElementById('element_dom_id').addEventListener(
'ajax:error', function(event) {
...
}
);
...
</script>
答案 0 :(得分:1)
尝试一下:
$(function() {
// ...
$.rails.ajax = function(options) {
if (!options.timeout) {
options.timeout = 100000;
}
return $.ajax(options);
};
// ...
});
可以使用jquery-ujs中的$ .rails.ajax属性,以在未显式传递超时的情况下注入超时。