Home > database >  Adding Dexie.js queries in JavaScript file gives hint of missing type
Adding Dexie.js queries in JavaScript file gives hint of missing type

Time:11-24

If I add a Dexie.js query in a JavaScript file such as:

let friends = liveQuery(async () => {
  return await db.friends
    .where("age")
    .between(18, 65)
    .toArray();
});

I get a hint like this:

"Property 'friends' does not exist on type 'Dexie'.ts(2339)"

Why?

Putting it in a Svelte file is fine, but I would like to keep some basic queries in one place, like find, add, and delete.

CodePudding user response:

I suppose you are referring to a TypeScript error. If you are not subclassing Dexie as suggested on Dexie's Svelte tutorial, you cannot use db.friends directly without TypeScript complaining. If you don't want to subclass Dexie, you can also use the table() method:

let friends = liveQuery(async () => {
  return await db.table('friends')
    .where("age")
    .between(18, 65)
    .toArray();
});
  • Related