【发布时间】:2018-02-13 01:36:11
【问题描述】:
我正在开发一个从 JSON 文件加载一些配置选项的 p5.js 项目。我正在 p5.js 的 preload() 函数中预加载配置文件,如下所示:
let config = {};
function preload() {
config = loadJSON("data/config.json");
}
配置 JSON 文件的一部分包含一些 song 对象,每个对象都有一个 filename 属性,这是我要预加载的另一个 JSON 文件:
"songs": [
{
"title": "Song One",
"filename": "01.json"
},
...
]
在 p5.js 的 setup() 函数之前我无法访问配置文件数据(因为我不能保证在此之前配置文件已被完全读取),到那时我无法再预加载歌曲 JSON 文件。
我正在尝试弄清楚是否有任何解决方法。
编辑:感谢乔治在下面的回答,我的工作如下。以下所有内容在进入 p5.js 的 setup() 函数之前运行,这正是我所追求的:
let config = {};
function preload() {
config = loadJSON("config.json", configLoaded);
}
function configLoaded(_config) {
let songs_length = _config.album.songs.length;
for (let i = 0; i < songs_length; i++) {
loadJSON("data/" + _config.album.songs[i].filename, songLoaded);
}
}
function songLoaded(_song) {
console.log(_song);
}
【问题讨论】:
标签: javascript json p5.js