我正在尝试在我的 ionic 2 应用程序中使用 lokijs。我能够使用 lokijs.js。
当尝试坚持使用适配器时,我无法做到。我准备好 lokijs-cordova-fs-adapter 就可以使用了。但是当我在我的应用程序中引用它时,如下所示:收到一个无法找到的错误。
var LokiCordovaFSAdapter = require("./cordova-file-system-adapter");
尝试将其添加到我的 index.html 中,并尝试在我的 ts 文件中创建适配器,如下所示:
var adapter = new LokiCordovaFSAdapter({"prefix": "loki"});
在这种情况下出现语法错误。有人可以举例说明如何使用它吗?
Ciao,这适用于 Ionic 2,所以一步一步(我在一个service https://ionicframework.com/docs/v2/cli/generate/):
-
检查两个依赖项是否都已安装:
npm install lokijs --save
npm install loki-cordova-fs-adapter --save
-
声明并导入以下内容(在类声明之前):
declare var require: any;
var loki = require('lokijs');
var LokiCordovaFSAdapter = require("loki-cordova-fs-adapter");
var adapter = new LokiCordovaFSAdapter({"prefix": "loki"});
-
在服务类中使用以下内容:
db: any; // LokiJS database
pandas: any; // our DB's document collection object
constructor() {
console.log("* inicializando...");
this.db = new loki('pandas.db', {
autoload: true,
autoloadCallback: function() {
console.log("* database loaded...")
},
autosave: true,
autosaveInterval: 10 * 1000, //every 10 seconds
adapter: adapter
});
}
-
使用它(此代码也在服务类内部):
load() {
let collection = this.db.getCollection('pandas');
if (collection == null) {
this.pandas = this.db.addCollection('pandas');
} else {
this.pandas = collection;
}
}
pandaKamasutra() {
console.log("* Save the pandas...");
for (let i=0; i < 100; i++)
this.pandas.insert({ name: 'Panda ' + (i+1), surename: "Whurgh " + i });
}
showPandas() {
var results = this.pandas.find({});
for (let r of results)
console.log(`% id: ${r.$loki}, Panda: ${r.name}`);
}
我今天下午解决了这个问题,在浏览了 LokiJS 和 lokijs-cordova-fs-adapter 代码后,我在 Ionic 文档中找到了“光”here https://ionicframework.com/docs/v2/resources/third-party-libs/.
希望它也适合你。 =]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)