2013-07-31 64 views
0

我收到了第三方JavaScript庫從集成指令的供應商,它說,使用下面的腳本包括:通過require.js將xml配置文件傳遞到JavaScript庫中?

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

注意在SRC標籤末尾的「config.xml中?」位。這是一個xml文件,其中包含庫解析和操作的數據。刪除參數會導致庫在嘗試解析空xml響應對象時引發異常。

Require.js不希望在最後的「?config.xml中」參數。它把它當作是lib文件名的一部分。

重新佈線第三方代碼不會是一個可管理的選擇。無法刪除代碼,因爲它是系統的一個組成部分。我不想轉儲require.js,因爲應用程序是SPA主幹,require.js是整個主幹代碼庫的模塊/依賴關係管理器。

任何可行的選擇?爲清楚起見

修訂原貼:

+0

這將是有用的,以顯示你試圖讓RequireJS加載腳本什麼配置。 – Louis

回答

0

你可能會誤解如何script標籤的「src」屬性的作品。它所做的只是包含來自給定URL的腳本。如果提供該文件的Web服務器對查詢字符串(?config.xml)沒有任何作用,則只會被忽略。請記住,「腳本」標記只是在您的頁面中包含代碼並執行加載的代碼,即它。腳本標籤甚至不會理解「?config.xml」的含義,它只是URL的一部分,只是從您提供的URL中加載腳本。

什麼,你可能需要做的是包括腳本文件,並調用與XML文件作爲一個參數,腳本某些功能或對象/功能。該腳本也許可以從Web服務器檢索XML文件(通過ajax,像jQuery這樣的庫可以提供幫助),然後處理該XML。但是,這樣做的過程可能超出了我的答案可以提供的範圍,而無需編寫一個小的「中篇小說」:)

簡答:「?config.xml」,就腳本而言加載去,什麼都不做。

+0

感謝您花時間回覆。 – Robert

+0

感謝您花時間回覆。讓我再詳細說明一下。 「?config.xml」肯定會做些什麼。我包括的圖書館是Akamai的第三方產品。我無權重新配置他們的軟件配置。我已經和他們說過了,並沒有在src中提供「?config.xml」參數,包括打破他們的代碼。發生javascript異常,因爲它開始解析空的xml請求對象。我已通過刪除並替換參數進行驗證。所以不知何故我需要包含這個參數。我可以在一個普通的腳本標記中完成它,它可以工作 – Robert

+0

我明白了。那麼確實在Akamai上配置了Akami在腳本中使用的.xml文件呢?我感覺他們處理XML文件,並在*他們的服務器上按需生成一個定製的JavaScript文件。 – revlayle

相關問題