Как найти, где функция, которая объявлена ​​не на верхнем уровне или сразу внутри другой функции?

У меня есть работающее веб-приложение, использующее require.js, и я пытаюсь, чтобы все файлы были уменьшены и объединены. Я использую grunt-contrib-requirejs для компиляции всего проекта в файл bundle.js, например так:

    requirejs: {
        compile: {
            options: {
                baseUrl: "public/",
                mainConfigFile: "config.js",
                name: "start",
                out: "public/bundle.js",
                preserveLicenseComments: false,
            }
        }
    }

Теперь я изменил свой index.html так, чтобы он вызывал пакет, а не разделенную точку входа start.js:

заменены: <script data-main="start" src="require.js"></script>

с: <script data-main="../bundle.js" src="require.js"></script>

Компиляция, кажется, идет хорошо, и bundle.js действительно найден, но я получаю эту ошибку:

Uncaught SyntaxError:../bundle.js: в коде строгого режима функции могут быть объявлены только на верхнем уровне или непосредственно в другой функции.

Но отладчик Chrome показывает ошибку, как выдается из require.js. Я почти уверен, что в require.js нет ошибки. Как я могу найти, какая часть моего кода вызывает ошибку?

Обновление Это может (или не может) быть связано с этой недавней ошибкой jQuery. Я не могу сказать, потому что, когда я использую неминифицированную версию jquery, я получаю еще одну ошибку ("определение не определено"), приходящую из этой строки: define("jquery", function(){});, Я тоже не знаю, откуда взялась эта строка, кажется странным заняться...

0 ответов

Другие вопросы по тегам