Подтвердить что ты не робот

JS - Невозможно объединить файлы lib

У меня есть несколько файлов lib в файле index.html, которые загружаются в правильной последовательности для приложения, которое я запускаю.

<!-- example of some of them... -->
<script src="/./sys/lib/jquery.min.js"></script>
<script src="/./sys/lib/jquery.ui.min.js"></script>
<script src="/./sys/lib/jquery.easing.min.js"></script>
<script src="/./sys/lib/underscore.min.js"></script>
<script src="/./sys/lib/handlebars.min.js"></script>
<script src="/./sys/lib/backbone.min.js"></script>
<script src="/./sys/lib/moment.min.js"></script>
<script src="/./sys/lib/libs.extensions.js"></script>

Они работают нормально, они уже все минимизированы.

Теперь я хочу объединить эти все в один файл для скорости загрузки:

<script src="/./sys/lib/libs.all.js"></script>

Итак, я открываю новый файл libs.all.js и один за другим вставляю в него мини файлы .js с нулевой модификацией в той же последовательности, что указан выше. Это работает, пока я не доберусь до момента. Когда я вставляю это и запускаю его, я получаю ошибку JS.

TypeError: (intermediate value)(...) is not a function

Я не получаю то, что мне не хватает - если я вставляю их в нужную последовательность, когда они синхронизируются, загружается в файл HTML, в чем разница?

4b9b3361

Ответ 1

Скорее всего, одному из ваших js файлов в конце не хватает ;. Откройте тот, который, по вашему мнению, вызывает ошибку, и добавьте ; в конец или добавьте ; в первую строку следующего js файла.

Ответ 2

Изменение кода javascript не устраняет основную причину проблемы, так что это может случиться снова, как только вы введете новый файл JavaScript.

У вас есть по крайней мере несколько вариантов для постоянного исправления - они связаны с изменением сборки, чтобы это не могло произойти в будущем, даже если отсутствует точка с запятой:

  • Внесите a ; между файлами, которые вы объединяете. Обычно это простое однострочное изменение в зависимости от того, как вы объединяете файлы.
  • Сначала сначала сверните файлы, а затем соедините. Это должно оставить \n между файлами, которые вы конкатенируете, что позволяет ASI позаботиться об этом для вас.

Ответ 3

просто добавьте полу-клон и новую строку

';\n'

в конце каждого файла