如何使用requirejs加载静态JSON文件?

我想保留一个JSON文档来存储一些简单的数据,并且我需要此文档并在define()调用中使用JSON对象,以便可以使用它。这不是async电话。我的意思是应该用于开发,但我确实希望在构建时编译文件,这与asyncAPI

的实际调用不同,API的内容是动态的。

回答:

最简单的方法是为此使用requirejs json插件,这将使您也可以将文件包括在构建中。

https://github.com/millermedeiros/requirejs-

plugins

这是一个示例:

require(['json!someFile.json'], function(data){

...

})

// It does not actually need to be a .json extension, this will work to:

require(['json!someFile'], function(data){

...

})

如果要将文件包含在r.js构建中,以便始终在main / js引导程序文件中对其进行优化,则必须将其添加到include选项中

您也可以为此使用require js文本插件,它通常用于加载模板文件,但也可以使用它来加载.json文件。

https://github.com/requirejs/text

然后,您必须解析自己的内容JSON.parse

(如果需要,请包含json2.js以提供对较旧浏览器的支持)

您还可以将json包装在其自己的define()中,这样您就可以按传统要求使用它,但是如果限于实际.json文件,则无法使用。

另一种选择是通过jquery或其他工具要求文本文件通过ajax。

$.get('somefile.json', function(data) {

// do something with your data

});

以上是 如何使用requirejs加载静态JSON文件? 的全部内容, 来源链接: utcz.com/qa/434065.html

回到顶部