Index.htmlファイルには複数のlibファイルがあり、実行中のアプリに適切な順序で読み込まれます。
<!-- 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>
これらは正常に動作し、すでにすべて縮小されています。
次に、これらすべてを1つのファイルにまとめてロード速度を上げたいと思います。
<script src="/./sys/lib/libs.all.js"></script>
そこで、新しいlibs.all.js
ファイルを作成し、縮小した.jsファイルをzero修正で正確に同じシーケンスで上記のように1つずつ貼り付けます。これは、moment.jsに到達するまで機能します。それを貼り付けて実行すると、JSエラーが発生します。
TypeError: (intermediate value)(...) is not a function
不足しているものは取得できません-HTMLファイルに同期ロードされたときに正しい順序で貼り付けた場合、違いは何ですか?
ほとんどの場合、jsファイルの最後に;
がありません。エラーの原因と思われるものを開き、最後に;
を追加するか、次のjsファイルの最初の行に;
を追加します。
セミクローンと改行を追加するだけです
';\n'
各ファイルの終わりに
JavaScriptコードを変更しても問題の根本原因が修正されるわけではないため、新しいJavaScriptファイルを導入するとすぐにこの問題が再び発生する可能性があります。
永続的な修正には少なくともいくつかの選択肢があります-セミコロンが欠落していても将来的にこれが発生しないようにビルドを変更する必要があります:
;
を挿入します。これは通常、ファイルの連結方法に応じて、簡単な1行の変更です。