How to set the model type n pouchdb upsert?
It seem I cant find solution on this. using upsert on pouchdb I am getting TS2345
and or TS2339
.
I tried using it like htis.
db.upsert('id', doc =>
doc.p = 'sample';
return doc;
);
but on the doc.p
I am getting TS2339
Property 'p' does not exist on type ' | IdMeta'
and base on pouchdb-upsert/index.d.ts it has this definition
upsert<Model>(docId: Core.DocumentId, diffFun: UpsertDiffCallback<Content & Model>): Promise<UpsertResponse>;
So I tried this
db.upsert< p: string >('id', doc =>
doc.p = 'sample';
return doc;
);
but now I am getting TS2345
and TS2339
. here is the error
Argument of type '(doc: | Document< p: string; >) => | Document< p: string; >' is not assignable to parameter of type 'UpsertDiffCallback< p: string; >'.
Type ' | Document< p: string; >' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type '' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type '' is not assignable to type ' p: string; & Partial<IdMeta>'.
Type '' is not assignable to type ' p: string; '.
Property 'p' is missing in type ''. (typescript-tide)
Anyone? please, thanks.
Update
When I test it like this:
public test()
new PouchDB('test').upsert< p: string >('id', doc =>
doc.p = 'test string';
return doc;
)
I am getting this:
Argument of type '(doc: Partial<Document< p: string; >>) => Partial<Document< p: string; >>' is not assignable to parameter of type 'UpsertDiffCallback< p: string; >'.
Type 'Partial<Document< p: string;; >>' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; & Partial<IdMeta>'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; '.
Types of property 'p' are incompatible.
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'. (typescript-tide)
While if I do it like this:
public test2()
new PouchDB< p: string >('test').upsert('id', doc =>
doc.p = 'test string';
return doc;
)
I am getting this:
Argument of type '(doc: Partial<Document< p: string; >>) => Partial<Document< p: string; >>' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & Partial<Document< p: string; >>>'.
Type 'Partial<Document< p: string; >>' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<Document< p: string; >> & Partial<IdMeta>) | null | ...'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; & Partial<Document< p: string; >> & Partial<IdMeta>'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; '.
Types of property 'p' are incompatible.
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'. (typescript-tide)
typescript pouchdb upsert
add a comment |
It seem I cant find solution on this. using upsert on pouchdb I am getting TS2345
and or TS2339
.
I tried using it like htis.
db.upsert('id', doc =>
doc.p = 'sample';
return doc;
);
but on the doc.p
I am getting TS2339
Property 'p' does not exist on type ' | IdMeta'
and base on pouchdb-upsert/index.d.ts it has this definition
upsert<Model>(docId: Core.DocumentId, diffFun: UpsertDiffCallback<Content & Model>): Promise<UpsertResponse>;
So I tried this
db.upsert< p: string >('id', doc =>
doc.p = 'sample';
return doc;
);
but now I am getting TS2345
and TS2339
. here is the error
Argument of type '(doc: | Document< p: string; >) => | Document< p: string; >' is not assignable to parameter of type 'UpsertDiffCallback< p: string; >'.
Type ' | Document< p: string; >' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type '' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type '' is not assignable to type ' p: string; & Partial<IdMeta>'.
Type '' is not assignable to type ' p: string; '.
Property 'p' is missing in type ''. (typescript-tide)
Anyone? please, thanks.
Update
When I test it like this:
public test()
new PouchDB('test').upsert< p: string >('id', doc =>
doc.p = 'test string';
return doc;
)
I am getting this:
Argument of type '(doc: Partial<Document< p: string; >>) => Partial<Document< p: string; >>' is not assignable to parameter of type 'UpsertDiffCallback< p: string; >'.
Type 'Partial<Document< p: string;; >>' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; & Partial<IdMeta>'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; '.
Types of property 'p' are incompatible.
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'. (typescript-tide)
While if I do it like this:
public test2()
new PouchDB< p: string >('test').upsert('id', doc =>
doc.p = 'test string';
return doc;
)
I am getting this:
Argument of type '(doc: Partial<Document< p: string; >>) => Partial<Document< p: string; >>' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & Partial<Document< p: string; >>>'.
Type 'Partial<Document< p: string; >>' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<Document< p: string; >> & Partial<IdMeta>) | null | ...'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; & Partial<Document< p: string; >> & Partial<IdMeta>'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; '.
Types of property 'p' are incompatible.
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'. (typescript-tide)
typescript pouchdb upsert
add a comment |
It seem I cant find solution on this. using upsert on pouchdb I am getting TS2345
and or TS2339
.
I tried using it like htis.
db.upsert('id', doc =>
doc.p = 'sample';
return doc;
);
but on the doc.p
I am getting TS2339
Property 'p' does not exist on type ' | IdMeta'
and base on pouchdb-upsert/index.d.ts it has this definition
upsert<Model>(docId: Core.DocumentId, diffFun: UpsertDiffCallback<Content & Model>): Promise<UpsertResponse>;
So I tried this
db.upsert< p: string >('id', doc =>
doc.p = 'sample';
return doc;
);
but now I am getting TS2345
and TS2339
. here is the error
Argument of type '(doc: | Document< p: string; >) => | Document< p: string; >' is not assignable to parameter of type 'UpsertDiffCallback< p: string; >'.
Type ' | Document< p: string; >' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type '' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type '' is not assignable to type ' p: string; & Partial<IdMeta>'.
Type '' is not assignable to type ' p: string; '.
Property 'p' is missing in type ''. (typescript-tide)
Anyone? please, thanks.
Update
When I test it like this:
public test()
new PouchDB('test').upsert< p: string >('id', doc =>
doc.p = 'test string';
return doc;
)
I am getting this:
Argument of type '(doc: Partial<Document< p: string; >>) => Partial<Document< p: string; >>' is not assignable to parameter of type 'UpsertDiffCallback< p: string; >'.
Type 'Partial<Document< p: string;; >>' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; & Partial<IdMeta>'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; '.
Types of property 'p' are incompatible.
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'. (typescript-tide)
While if I do it like this:
public test2()
new PouchDB< p: string >('test').upsert('id', doc =>
doc.p = 'test string';
return doc;
)
I am getting this:
Argument of type '(doc: Partial<Document< p: string; >>) => Partial<Document< p: string; >>' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & Partial<Document< p: string; >>>'.
Type 'Partial<Document< p: string; >>' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<Document< p: string; >> & Partial<IdMeta>) | null | ...'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; & Partial<Document< p: string; >> & Partial<IdMeta>'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; '.
Types of property 'p' are incompatible.
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'. (typescript-tide)
typescript pouchdb upsert
It seem I cant find solution on this. using upsert on pouchdb I am getting TS2345
and or TS2339
.
I tried using it like htis.
db.upsert('id', doc =>
doc.p = 'sample';
return doc;
);
but on the doc.p
I am getting TS2339
Property 'p' does not exist on type ' | IdMeta'
and base on pouchdb-upsert/index.d.ts it has this definition
upsert<Model>(docId: Core.DocumentId, diffFun: UpsertDiffCallback<Content & Model>): Promise<UpsertResponse>;
So I tried this
db.upsert< p: string >('id', doc =>
doc.p = 'sample';
return doc;
);
but now I am getting TS2345
and TS2339
. here is the error
Argument of type '(doc: | Document< p: string; >) => | Document< p: string; >' is not assignable to parameter of type 'UpsertDiffCallback< p: string; >'.
Type ' | Document< p: string; >' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type '' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type '' is not assignable to type ' p: string; & Partial<IdMeta>'.
Type '' is not assignable to type ' p: string; '.
Property 'p' is missing in type ''. (typescript-tide)
Anyone? please, thanks.
Update
When I test it like this:
public test()
new PouchDB('test').upsert< p: string >('id', doc =>
doc.p = 'test string';
return doc;
)
I am getting this:
Argument of type '(doc: Partial<Document< p: string; >>) => Partial<Document< p: string; >>' is not assignable to parameter of type 'UpsertDiffCallback< p: string; >'.
Type 'Partial<Document< p: string;; >>' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<IdMeta>) | null | undefined'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; & Partial<IdMeta>'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; '.
Types of property 'p' are incompatible.
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'. (typescript-tide)
While if I do it like this:
public test2()
new PouchDB< p: string >('test').upsert('id', doc =>
doc.p = 'test string';
return doc;
)
I am getting this:
Argument of type '(doc: Partial<Document< p: string; >>) => Partial<Document< p: string; >>' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & Partial<Document< p: string; >>>'.
Type 'Partial<Document< p: string; >>' is not assignable to type 'false | "" | 0 | ( p: string; & Partial<Document< p: string; >> & Partial<IdMeta>) | null | ...'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; & Partial<Document< p: string; >> & Partial<IdMeta>'.
Type 'Partial<Document< p: string; >>' is not assignable to type ' p: string; '.
Types of property 'p' are incompatible.
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'. (typescript-tide)
typescript pouchdb upsert
typescript pouchdb upsert
edited Nov 14 '18 at 3:42
zer09
asked Nov 13 '18 at 7:25
zer09zer09
431817
431817
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The root of the problem is that your diffFun
receives the argument if the document does not exist, and that type does not have any fields. I've submitted a pull request to DefinitelyTyped to change the argument type to
Partial<Core.Document<Content & Model>>
, which will be more useful since it will allow you to assign to fields. (See this answer for the possible ways to use my modified declarations until the pull request is merged.)
However, if you use a document type with required fields such as p: string
, you still won't be able to return doc
without a type assertion because TypeScript still thinks that doc
has only an optional property. You could specify the document type as p?: string
and then your code will compile without error. But if you do expect all documents in the database to have a p
property, it's probably better practice to use p: string
and have each diffFun
either use a type assertion or return a new object, so you're reminded that you need to initialize all required properties in the case that the document didn't exist.
Thanks! BTW your PR is still not merged, I just patch my index.d.ts but I still got this(doc: Partial<Document< p: string; >>) => void' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & void>
. And if I wont specify the document type, I am getting this(doc: Partial<IdMeta>) => void' is not assignable to parameter of type 'UpsertDiffCallback<void & >
– zer09
Nov 13 '18 at 23:55
Did you remove thereturn doc
statement from thediffFun
? The function is required to return the new document. If that wasn't it, please update the question with your latest code so I can reproduce the problem.
– Matt McCutchen
Nov 14 '18 at 3:00
sorry, I didn't add thereturn doc
but when I did, please see the update above.
– zer09
Nov 14 '18 at 3:44
Ah. This is the issue I mentioned in the second paragraph of the answer. You'll need to use a type assertion before returningdoc
, for example,return <p: string>doc;
.
– Matt McCutchen
Nov 14 '18 at 3:59
ohh, thank you so much! it worked.
– zer09
Nov 14 '18 at 4:28
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53275861%2fhow-to-set-the-model-type-n-pouchdb-upsert%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The root of the problem is that your diffFun
receives the argument if the document does not exist, and that type does not have any fields. I've submitted a pull request to DefinitelyTyped to change the argument type to
Partial<Core.Document<Content & Model>>
, which will be more useful since it will allow you to assign to fields. (See this answer for the possible ways to use my modified declarations until the pull request is merged.)
However, if you use a document type with required fields such as p: string
, you still won't be able to return doc
without a type assertion because TypeScript still thinks that doc
has only an optional property. You could specify the document type as p?: string
and then your code will compile without error. But if you do expect all documents in the database to have a p
property, it's probably better practice to use p: string
and have each diffFun
either use a type assertion or return a new object, so you're reminded that you need to initialize all required properties in the case that the document didn't exist.
Thanks! BTW your PR is still not merged, I just patch my index.d.ts but I still got this(doc: Partial<Document< p: string; >>) => void' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & void>
. And if I wont specify the document type, I am getting this(doc: Partial<IdMeta>) => void' is not assignable to parameter of type 'UpsertDiffCallback<void & >
– zer09
Nov 13 '18 at 23:55
Did you remove thereturn doc
statement from thediffFun
? The function is required to return the new document. If that wasn't it, please update the question with your latest code so I can reproduce the problem.
– Matt McCutchen
Nov 14 '18 at 3:00
sorry, I didn't add thereturn doc
but when I did, please see the update above.
– zer09
Nov 14 '18 at 3:44
Ah. This is the issue I mentioned in the second paragraph of the answer. You'll need to use a type assertion before returningdoc
, for example,return <p: string>doc;
.
– Matt McCutchen
Nov 14 '18 at 3:59
ohh, thank you so much! it worked.
– zer09
Nov 14 '18 at 4:28
add a comment |
The root of the problem is that your diffFun
receives the argument if the document does not exist, and that type does not have any fields. I've submitted a pull request to DefinitelyTyped to change the argument type to
Partial<Core.Document<Content & Model>>
, which will be more useful since it will allow you to assign to fields. (See this answer for the possible ways to use my modified declarations until the pull request is merged.)
However, if you use a document type with required fields such as p: string
, you still won't be able to return doc
without a type assertion because TypeScript still thinks that doc
has only an optional property. You could specify the document type as p?: string
and then your code will compile without error. But if you do expect all documents in the database to have a p
property, it's probably better practice to use p: string
and have each diffFun
either use a type assertion or return a new object, so you're reminded that you need to initialize all required properties in the case that the document didn't exist.
Thanks! BTW your PR is still not merged, I just patch my index.d.ts but I still got this(doc: Partial<Document< p: string; >>) => void' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & void>
. And if I wont specify the document type, I am getting this(doc: Partial<IdMeta>) => void' is not assignable to parameter of type 'UpsertDiffCallback<void & >
– zer09
Nov 13 '18 at 23:55
Did you remove thereturn doc
statement from thediffFun
? The function is required to return the new document. If that wasn't it, please update the question with your latest code so I can reproduce the problem.
– Matt McCutchen
Nov 14 '18 at 3:00
sorry, I didn't add thereturn doc
but when I did, please see the update above.
– zer09
Nov 14 '18 at 3:44
Ah. This is the issue I mentioned in the second paragraph of the answer. You'll need to use a type assertion before returningdoc
, for example,return <p: string>doc;
.
– Matt McCutchen
Nov 14 '18 at 3:59
ohh, thank you so much! it worked.
– zer09
Nov 14 '18 at 4:28
add a comment |
The root of the problem is that your diffFun
receives the argument if the document does not exist, and that type does not have any fields. I've submitted a pull request to DefinitelyTyped to change the argument type to
Partial<Core.Document<Content & Model>>
, which will be more useful since it will allow you to assign to fields. (See this answer for the possible ways to use my modified declarations until the pull request is merged.)
However, if you use a document type with required fields such as p: string
, you still won't be able to return doc
without a type assertion because TypeScript still thinks that doc
has only an optional property. You could specify the document type as p?: string
and then your code will compile without error. But if you do expect all documents in the database to have a p
property, it's probably better practice to use p: string
and have each diffFun
either use a type assertion or return a new object, so you're reminded that you need to initialize all required properties in the case that the document didn't exist.
The root of the problem is that your diffFun
receives the argument if the document does not exist, and that type does not have any fields. I've submitted a pull request to DefinitelyTyped to change the argument type to
Partial<Core.Document<Content & Model>>
, which will be more useful since it will allow you to assign to fields. (See this answer for the possible ways to use my modified declarations until the pull request is merged.)
However, if you use a document type with required fields such as p: string
, you still won't be able to return doc
without a type assertion because TypeScript still thinks that doc
has only an optional property. You could specify the document type as p?: string
and then your code will compile without error. But if you do expect all documents in the database to have a p
property, it's probably better practice to use p: string
and have each diffFun
either use a type assertion or return a new object, so you're reminded that you need to initialize all required properties in the case that the document didn't exist.
answered Nov 13 '18 at 16:11
Matt McCutchenMatt McCutchen
13.3k719
13.3k719
Thanks! BTW your PR is still not merged, I just patch my index.d.ts but I still got this(doc: Partial<Document< p: string; >>) => void' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & void>
. And if I wont specify the document type, I am getting this(doc: Partial<IdMeta>) => void' is not assignable to parameter of type 'UpsertDiffCallback<void & >
– zer09
Nov 13 '18 at 23:55
Did you remove thereturn doc
statement from thediffFun
? The function is required to return the new document. If that wasn't it, please update the question with your latest code so I can reproduce the problem.
– Matt McCutchen
Nov 14 '18 at 3:00
sorry, I didn't add thereturn doc
but when I did, please see the update above.
– zer09
Nov 14 '18 at 3:44
Ah. This is the issue I mentioned in the second paragraph of the answer. You'll need to use a type assertion before returningdoc
, for example,return <p: string>doc;
.
– Matt McCutchen
Nov 14 '18 at 3:59
ohh, thank you so much! it worked.
– zer09
Nov 14 '18 at 4:28
add a comment |
Thanks! BTW your PR is still not merged, I just patch my index.d.ts but I still got this(doc: Partial<Document< p: string; >>) => void' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & void>
. And if I wont specify the document type, I am getting this(doc: Partial<IdMeta>) => void' is not assignable to parameter of type 'UpsertDiffCallback<void & >
– zer09
Nov 13 '18 at 23:55
Did you remove thereturn doc
statement from thediffFun
? The function is required to return the new document. If that wasn't it, please update the question with your latest code so I can reproduce the problem.
– Matt McCutchen
Nov 14 '18 at 3:00
sorry, I didn't add thereturn doc
but when I did, please see the update above.
– zer09
Nov 14 '18 at 3:44
Ah. This is the issue I mentioned in the second paragraph of the answer. You'll need to use a type assertion before returningdoc
, for example,return <p: string>doc;
.
– Matt McCutchen
Nov 14 '18 at 3:59
ohh, thank you so much! it worked.
– zer09
Nov 14 '18 at 4:28
Thanks! BTW your PR is still not merged, I just patch my index.d.ts but I still got this
(doc: Partial<Document< p: string; >>) => void' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & void>
. And if I wont specify the document type, I am getting this (doc: Partial<IdMeta>) => void' is not assignable to parameter of type 'UpsertDiffCallback<void & >
– zer09
Nov 13 '18 at 23:55
Thanks! BTW your PR is still not merged, I just patch my index.d.ts but I still got this
(doc: Partial<Document< p: string; >>) => void' is not assignable to parameter of type 'UpsertDiffCallback< p: string; & void>
. And if I wont specify the document type, I am getting this (doc: Partial<IdMeta>) => void' is not assignable to parameter of type 'UpsertDiffCallback<void & >
– zer09
Nov 13 '18 at 23:55
Did you remove the
return doc
statement from the diffFun
? The function is required to return the new document. If that wasn't it, please update the question with your latest code so I can reproduce the problem.– Matt McCutchen
Nov 14 '18 at 3:00
Did you remove the
return doc
statement from the diffFun
? The function is required to return the new document. If that wasn't it, please update the question with your latest code so I can reproduce the problem.– Matt McCutchen
Nov 14 '18 at 3:00
sorry, I didn't add the
return doc
but when I did, please see the update above.– zer09
Nov 14 '18 at 3:44
sorry, I didn't add the
return doc
but when I did, please see the update above.– zer09
Nov 14 '18 at 3:44
Ah. This is the issue I mentioned in the second paragraph of the answer. You'll need to use a type assertion before returning
doc
, for example, return <p: string>doc;
.– Matt McCutchen
Nov 14 '18 at 3:59
Ah. This is the issue I mentioned in the second paragraph of the answer. You'll need to use a type assertion before returning
doc
, for example, return <p: string>doc;
.– Matt McCutchen
Nov 14 '18 at 3:59
ohh, thank you so much! it worked.
– zer09
Nov 14 '18 at 4:28
ohh, thank you so much! it worked.
– zer09
Nov 14 '18 at 4:28
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53275861%2fhow-to-set-the-model-type-n-pouchdb-upsert%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown