Я написал новый JS-скрипт для отправки HTTP-запросов на определенные события кликов.В настоящее время работает со всеми страницами в моем приложении rails.(Не идеально, но я подумал, что это пока не вызовет серьезных проблем. Однако его присутствие делает огромное количество тестов на капибару неудачным. Я не знаю почему.
function onCheckboxClick() {
const url = $(this).attr("data-action")
const data = {
method: "PATCH",
body: JSON.stringify({ confidential: this.checked }),
headers: {
'X-CSRF-Token': Rails.csrfToken(),
'Content-Type': 'application/json'
}
}
fetch(url, data)
.then(response => { return response.json() })
.catch(error => console.log(error))
}
$(document).on('turbolinks:load', () => {
const checkboxes = document.querySelectorAll("#invoice_confidential")
checkboxes.forEach((box) => {
box.addEventListener("click", onCheckboxClick)
})
})