PouchDB无法插入多个json文件

时间:2015-04-01 17:59:19

标签: storage indexeddb pouchdb

我正在尝试使用PouchDB存储3个不同的JSON对象,

devices.json:

  

[     { “ID”: “001”, “名”: “iPhone”, “品牌”: “苹果”, “标签”: “苹果”, “IOS”], “OS”: “IOS”, “说明” “......”},     { “ID”: “002”, “名”: “银河”, “品牌”: “三星”, “标签”: “三星”, “机器人”], “OS”: “机器人”, “说明” “......”},     { “ID”: “003”, “名”: “关系”, “品牌”: “谷歌”, “标签”: “谷歌”, “机器人”], “说明”: “......”} ,     { “ID”: “004”, “名”:“星系   S4" , “品牌”: “三星”, “标签”: “三星”, “机器人”], “OS”: “机器人”, “说明”: “......”}   ]

brand.json:

  

[       {“id”:“001”,“name”:“Apple”},       {“id”:“002”,“name”:“Samsung”},       {“id”:“003”,“name”:“Google”}]

并且tags.json为

  

[       {“id”:“001”,“name”:“Apple”},       {“id”:“002”,“name”:“Samsung”},       {“id”:“003”,“name”:“Google”},       {“id”:“004”,“name”:“IOS”},       {“id”:“005”,“name”:“android”}]

这里当我使用db.bulkDocs()devices.json插入时,它在一个数据库中创建了7个表。现在我尝试使用相同的功能插入brands.json& tags.json。但它无法插入数据库。

我的javascript代码是

var db = new PouchDB('dev');
var toinsert = ["devices","brands","tags"];
toinsert.forEach(function(json){
    insert(json);
})
function insert(json){
    var param2 = {
        url: json + '.json',
        dataType: 'json',
        cache: false,
        type: 'GET'
    };
    $.ajax(param2)
        .done(function(data){
            db.bulkDocs(data).then(function (result) {
                console.log('Row inserted Successfully');
            }).catch(function (err) {
                console.log('Unable to insert into DB. Error: ' + err.name + ' - ' + err.message);
            });            
        });

}

这里当我检查indexedDB时,我只得到devices.json数据,其他人都丢失了。在这里我不确定天气PouchDB可以插入多个json文件吗?如果可以使用PouchDB,请告诉我获取它。

1 个答案:

答案 0 :(得分:1)

似乎第二个和第三个对象不是有效的json对象。这可能是问题,请检查http://jsonlint.com/以验证您的json对象。