0

次のスクリプト インクルードを使用するという統合手順が記載されたサード パーティの JavaScript ライブラリをベンダーから受け取りました。

    <script type="text/javascript"  src="../Scripts/thirdpartyscript.js?config.xml"></script>

src タグの末尾にある「?config.xml」ビットに注意してください。これは、ライブラリが解析して処理するデータを含む xml ファイルです。パラメータを削除すると、ライブラリは null xml 応答オブジェクトを解析しようとするため、例外をスローします。

Require.js は、最後に「?config.xml」パラメーターを必要としません。lib ファイル名の一部であるかのように扱います。

サードパーティのコードを再配線することは、管理可能なオプションではありません。システムの不可欠なコンポーネントであるため、コードを削除できません。アプリはSPAバックボーンであり、require.jsはバックボーンコードベース全体のモジュール/依存関係マネージャーであるため、require.jsをダンプしたくありません。

実行可能なオプションはありますか?

明確にするために元の投稿を改訂:

4

1 に答える 1

0

script タグの「src」属性の仕組みを誤解しているかもしれません。指定された URL からスクリプトをインクルードするだけです。ファイルを提供する Web サーバーがクエリ文字列 (?config.xml) に対して何もしない場合、それは単に無視されます。「スクリプト」タグはページにコードを含め、ロードされたコードを実行するだけであることを覚えておいてください。script タグは、「?config.xml」が単に URL の一部であることを超えて何を意味するのかさえ理解せず、指定した URL からスクリプトをロードするだけです。

おそらく必要なことは、スクリプト ファイルをインクルードし、XML ファイルをパラメーターとしてそのスクリプト内の関数またはオブジェクト/関数を呼び出すことです。スクリプトはおそらく、Web サーバーからその XML ファイルを取得し (ajax を介して、jQuery のようなライブラリがそれを支援します)、その XML を処理することもできます。ただし、それを行うプロセスは、小さな「小説」を書かずに私の答えが提供できる範囲外かもしれません:)

簡単な回答: 読み込まれたスクリプトに関する限り、「?config.xml」は何もしません。

于 2013-07-31T04:26:36.647 に答える