問題:
クライアント側の JavaScript をテストするためにzombie.js を使用していますが、問題が発生しています。Zombie.js は同期<script>
タグ実行を提供せず、実際には外部 JS ファイルをまったく実行しないようです。基本的なテストはこれを確認します:
<script type="text/javascript" src="test1.js"></script>
<script type="text/javascript" src="test2.js"></script>
<script type="text/javascript" src="test3.js"></script>
<script type="text/javascript">
console.log("Inline javascript.");
</script>
各 test#.js には次の 1 行が含まれます。console.log("TEST#.JS");
これを通常のブラウザーでレンダリングすると、コンソールに次のように表示されます。
TEST1.JS
TEST2.JS
TEST3.JS
Inline javascript.
しかし、zombie.js で実行すると、1 行しか表示されません。Inline javascript.
この問題を回避するために私が試みたのは次のとおりです。
document.createElement
スクリプトタグをドキュメントに動的に追加するために使用- を使用
document.write
してスクリプト ブロックを html に追加する setTimeout
onconsole.log("Inline javascript")
と 1 および 2 を組み合わせて使用して、テスト スクリプトの読み込みに時間を与えます。
すべての外部 JS ファイルの JS コードを巨大な<script>
ブロックに配置する以外に、この問題を解決する方法はありますか?