Problemy z debugowaniem skryptów zawartości w rozszerzeniu chrome za pomocą require.js

Aby załadować moduły do ​​skryptów treści, używam następującego kodu (źródłohttp://prezi.com/rodnyr5awftr/requirejs-in-chrome-extensions/):

require.load = function (context, moduleName, url) {
    var xhr;
    xhr = new XMLHttpRequest();
    xhr.open("GET", chrome.extension.getURL(url) + '?r=' + new Date().getTime(), true);
    xhr.onreadystatechange = function (e) {
        if (xhr.readyState === 4 && xhr.status === 200) {
            eval(xhr.responseText);
            context.completeLoad(moduleName)
        }
    };
    xhr.send(null);
};

Problem pojawia się podczas debugowania za pomocą konsoli Chrome. Za każdym razem, gdy wystąpi błąd w jednym z moich modułów, po prostu zgłasza on błąd występujący w anonimowej funkcji, ale nie informuje mnie o tym, który moduł lub linia require.js wystąpił w tym module, ale zamiast tego zawsze wskazuje na linię eval w powyżej skryptu.

Ponieważ wiele osób korzysta z różnych odmian powyższego kodu podczas korzystania z require.js z rozszerzeniami chrome, musi istnieć prosty sposób na uzyskanie większej ilości informacji w konsoli debugowania, po prostu nie wiem, co to jest :).

Dzięki za pomoc!!

AKTUALIZACJA 4/1: Zmiana powyższej instrukcji eval () w celu użycia funkcji () wydaje się rozwiązać problem polegający na tym, że chromowana konsola dodaje informacje o dodawaniu. (zasługa za tę pracę idzie w tym kierunkupytanie).

Zdaję sobie sprawę, że te dwie funkcje nie są całkowicie wymienne (patrzto pytanie). Jeśli ktoś wie o jakichś pułapkach w używaniu Function () zamiast eval () w powyższym kodzie, daj mi znać !!

questionAnswers(1)

yourAnswerToTheQuestion