【问题标题】:JayData provider failing to load for sqLite and indexedDbJayData 提供程序无法为 sqLite 和 indexedDb 加载
【发布时间】:2015-03-11 12:19:56
【问题描述】:

我正在尝试通过使用 sqLite 提供程序来使用 JayData

myDB = new MyDatabase({ provider: 'sqLite' , databaseName: 'MyDB', version: 1 });

但是当它运行这一行时,它会回显两次以控制台以下消息

"Provider fallback failed!"

我已尝试手动加载 sqLite 提供程序而不是加载它,但它没有解决问题。 如果我将提供程序设置交换为“indexedDb”,JayData js 会自动尝试从错误的目录加载 IndexedDbProvider.js 类

GET http://192.168.2.49/Test/jaydataproviders/IndexedDbProvider.js

应该是什么时候

GET http://192.168.2.49/Test/js/Jaydata/jaydataproviders/IndexedDbProvider.js

有谁知道为什么我在使用 sqLite 时遇到错误,或者如何让提供程序从正确的目录自动加载?我也尝试过手动加载 indexedDB 提供程序,但它没有解决问题,它仍然尝试错误地加载提供程序

我已将最新的 JayData 代码直接复制到 Jaydata 下的 SiteRoot/js 文件夹中,它应该在该文件夹中保持一致我没有更改或移动任何文件

我的数据库架构很大,但本质上类似于以下实体和数据库定义

    $data.Entity.extend("Image", {
        id: { type: "int", key: true, computed: true },
        location: { type: String, required: true, maxLength: 500 },
        classification: { type: "int", required: true },
        name: { type: String, maxLength: 500 }
    });
$data.Entity.extend("Inventory", {
    id: { type: "int", key: true, computed: true },
    name: { type: String, required: true, maxLength: 200 },
    description: { type: String, required: true, maxLength: 1000 },
    imageId: { type: "int", required: true}
});    
    $data.EntityContext.extend("MyDatabase", {
        Images: { type: $data.EntitySet, elementType: Image } ,
        Inventories: {type: $data.EntitySet, elementType: Inventory }
    });

我有一些来自 here 的 js 代码,它专门使用 getScript 按顺序加载正确的 js 文件,并且在 firefox 中调试确认文件正在按顺序加载

我正在按以下顺序加载文件

  1. jQuery 2.1.3
  2. /js/Jaydata/jaydata.js(默认 Jaydata.js 文件未修改)
  3. /js/DB/DBSchema.js(我的架构定义数据库对象)
  4. /js/DB/DBUtilities.js(一些帮助处理数据库的函数)
  5. /js/main.js

页面就绪的第 5 步 $(function() 分配数据库变量,onReady 检查数据库是否已初始化

myDB = new MyDatabase({ provider: 'indexedDb' , databaseName:'MyDB', version: 1 });

        myDB.onReady(function() {
                logThis('Connected to DB');
                checkIfInitilizeIsNeeded();
        });

这是提供程序无法加载的地方

感谢您的帮助

【问题讨论】:

    标签: javascript jquery sqlite indexeddb jaydata


    【解决方案1】:

    根据page JayData 不支持使用 webSql 或 sqLite 的 firefox,尽管它应该与 indexeddb 一起使用

    我已经使用 chrome 对其进行了测试,它似乎很高兴,所以是的,它是地球上第二大最受欢迎的浏览器,但 nm

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-03
      • 1970-01-01
      • 1970-01-01
      • 2022-01-16
      相关资源
      最近更新 更多