通过require.js将xml配置文件传递到javascript库中

Pass xml config file into javascript library via require.js?

本文关键字:javascript 库中 配置文件 require js xml 通过      更新时间:2023-09-26

我从一家供应商那里收到了一个第三方javascript库,其中包含集成说明,使用以下脚本包括:

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

请注意src标记末尾的"?config.xml"位。这是一个xml文件,包含库解析和操作的数据。删除参数会导致库在尝试解析null xml响应对象时抛出异常。

Require.js不希望在末尾使用"?config.xml"参数。它将其视为lib文件名的一部分。

重新编写第三方代码将不是一个可管理的选择。无法删除代码,因为它是系统的一个组成部分。我不想转储require.js,因为该应用程序是SPA主干,require.js是整个主干代码库的模块/依赖项管理器。

有什么可行的选择吗?

为清晰起见,修订了原始帖子:

您可能误解了script标记的"src"属性的工作原理。它所做的只是包含来自给定URL的脚本。如果为文件提供服务的web服务器对查询字符串(?config.xml)不做任何操作,那么它将被忽略。记住,"script"标签只是在你的页面中包含代码并执行加载的代码,这就是它。script标签甚至不理解你所说的"?config.xml"是什么意思,因为它只是URL的一部分,只是从你提供的URL加载脚本。

您可能需要做的是包含脚本文件,并使用XML文件作为参数调用该脚本中的某个函数或对象/函数。该脚本可能还可以从web服务器检索该XML文件(通过ajax,像jQuery这样的库可以提供帮助),然后处理该XML。然而,这样做的过程可能超出了我的答案所能提供的范围,而不需要写一篇小的"中篇小说":)

简短回答:"?config.xml",就加载的脚本而言,什么都不做。