cocos2d-js: Как загрузить файл JSON

#json #cocos2d-js

#json #cocos2d-js

Вопрос:

Как я могу загрузить файл JSON из локальной файловой системы в объект javascript?

Что-то похожее на jQuery:

 $.getJSON( "ajax/test.json", function( data ) {
    // data contains javascript object
}); 
 

Ответ №1:

Как ответили на официальных форумах, вы можете позвонить в cc.loader.loadJson :

 cc.loader.loadJson("res/example.json", function(error, data){
    cc.log(data); //data is the json object
});
 

Функция, которую вы передаете в качестве параметра, будет вызвана обратно, когда загрузка файла завершится.

Ответ №2:

Исследуя это, я нашел следующее (не полное) решение:

 var loadJSON = function(url, cb) {
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function() {
        if (xhr.readyState==3 amp;amp; xhr.status==200) {
            cb(null,JSON.parse(xhr.responseText));
        }
    }
    xhr.open("GET", url, true);
    xhr.send(null);
};

// read json file with words
loadJSON("res/words/dewords.words.json", function(err, text) {
    if( !err ) {
        muprisLayer.words = text;           
    }
});