Chrome拡張でJSONファイルを手軽に読み込んでみよう!


以下のような構造のChrome拡張のファイルがあったとします。

 my-extension
 ├── src
 │   ├── config.json
 │   └── main.js
 └── manifest.json

では、main.jsからconfig.jsonを読み込んでみましょう。なに、難しいことは考えず、以下の関数をコピペしてください。

コード

main.js
function getJSON(filename) {
    return new Promise(function(r) {
        var xhr = new XMLHttpRequest();
        xhr.open('GET', chrome.extension.getURL(filename), true);
        xhr.onreadystatechange = function() {
            if(xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
                r(xhr.responseText);
            }
        };
        xhr.send();
    });
}

getJSON('src/config.json').then(function(r) {
    //JSONファイルを読み込んだ後の処理
    var config = JSON.parse(r);
    console.log(config);
})

チャンチャン。