chúng tôi đang sử dụng require.js trong dự án của chúng tôi và chúng tôi cần phải ghi đè lên setTimeout trong dòng 705, đây là đoạn code mà chúng ta cần phải phớt lờ/bỏ qua bằng cách nào đó setTimeout này ở tất cả (Tôi có nghĩa là chạy qua nó), vấn đề là nếu tôi thay đổi nó trong mã nguồn mở rõ ràng khi tôi thay đổi phiên bản mã sẽ bị mất, Làm thế nào tôi nên ghi đè setTimout này từ bên ngoài chỉ cho tập tin require.js và giữ nó lâu khi tôi sử dụng lib này, có thể thực hiện điều đó trong cách thanh lịch trong JS trên toàn cầu không?override setTimeout trong require.js
https://github.com/jrburke/requirejs/blob/master/require.js
Đây là dòng 705
//If still waiting on loads, and the waiting load is something
//other than a plugin resource, or there are still outstanding
//scripts, then just try back later.
if ((!expired || usingPathFallback) && stillLoading) {
//Something is still waiting to load. Wait for it, but only
//if a timeout is not already in effect.
if ((isBrowser || isWebWorker) && !checkLoadedTimeoutId) {
checkLoadedTimeoutId = setTimeout(function() {
checkLoadedTimeoutId = 0;
checkLoaded();
}, 50);
}
}
FYI, Lý do mà chúng tôi làm điều đó là Chrome: timeouts/interval suspended in background tabs?
Đó gọi cho tất cả các chuông báo động của tôi, tại sao bạn cần phải làm điều đó? Thay đổi các chức năng và đối tượng toàn cục là * gần như không bao giờ * là một ý tưởng hay. –
@MadaraUchiha - xem các liên kết mà tôi đã cung cấp với setTimout, khi chúng tôi sử dụng require.js trên tab không hoạt động (ý tôi là sau khi mở cửa sổ mới), mọi tải dịch vụ đều mất một giây! –
Nhưng, trong tab không hoạt động, người dùng không xem, tại sao bạn quan tâm phải mất bao lâu? –