Đây là một vấn đề rất lạ. Tôi đã có một ứng dụng đường ray trong đó tôi đang thay thế một phần trên trang này bằng một phần khác bằng cách sử dụng UJS. Gần đây, nó ngừng hoạt động, vì vậy tôi bắt đầu đăng nhập trong suốt quá trình để xem nơi nó đã phá vỡ. Dưới đây là những gì tôi tìm thấy:đường ray ujs - javascript không thực hiện
- Sau khi liên kết được nhấp, bảng điều khiển đường ray cho tôi biết mọi thứ được hiển thị, bao gồm tất cả partials và trả về 200 OK.
- Một đặt trong các hành động điều khiển trả về mỹ
- Một đặt trong lợi nhuận khối respond.do tốt
- Một đặt trong file .js.erb trả tốt
Điều này có nghĩa nó nhận được tất cả các cách để chạy tệp .js.erb và đánh giá ruby không có lỗi. Nhưng đây là điều kỳ lạ - không có javascript nào đang thực thi. Khi tôi chạy cảnh báo ('hello?') Trong tệp .js.erb, nó không thực thi.
Có ai từng gặp vấn đề này trước đây không? Nó có vẻ cực kỳ kỳ lạ rằng nó sẽ chạy đánh giá erb nhưng không phải là js. Và không có lỗi nào xuất hiện trong giao diện điều khiển js.
Đối với bản ghi tôi có: xóa bộ nhớ cache, khởi động lại trình duyệt, khởi động lại ứng dụng đường ray và không có gì thay đổi. đang
mẫu:
# view
link_to 'example', some_path, :remote => true
# controller
respond_to do |format|
format.js
end
# .js.erb file
alert('this never shows up');
<% puts 'this shows up in the rails console' %>
Cảm ơn soo nhiều cho bất cứ ai có thể đổ một chút ánh sáng về vấn đề này lạ!
Mọi thứ trong bảng điều khiển JS? –
"Và không có lỗi xuất hiện trong giao diện điều khiển js." –
Xin lỗi; Tôi tự động bỏ qua các câu bắt đầu bằng các liên từ. –