如何使用requirejs加载静态JSON文件?
我想保留一个JSON文档来存储一些简单的数据,并且我需要此文档并在define()
调用中使用JSON对象,以便可以使用它。这不是async
电话。我的意思是应该用于开发,但我确实希望在构建时编译文件,这与async
API
的实际调用不同,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