本文整理汇总了TypeScript中apollo-angular.Apollo.mutate方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Apollo.mutate方法的具体用法?TypeScript Apollo.mutate怎么用?TypeScript Apollo.mutate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类apollo-angular.Apollo
的用法示例。
在下文中一共展示了Apollo.mutate方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: save
public save() {
if (!this.form.valid) return;
this.apollo.mutate({
mutation: AddPostMutation,
variables: {
"data": {
"title": this.form.value.title,
"content" :this.form.value.content
}
},
refetchQueries: [{
query: GetPostsQuery,
}],
})
.take(1)
.subscribe({
next: ({ data }) => {
console.log('got a new post', data);
// get new data
this.router.navigate(['/posts']);
}, error: (errors) => {
console.log('there was an error sending the query', errors);
}
});
}
示例2: Promise
return new Promise((resolve, reject) => {
this.apollo.mutate<DeletePostInterface>({
mutation: RemovePostMutation,
variables: {
"id": id
},
})
.take(1)
.subscribe({
next: ({ data }) => {
console.log('delete post', data.removePost);
// update data
resolve({
success: true,
message: `Post #${id} deleted successfully `
});
},
error: (errors) => {
console.log('there was an error sending the query', errors);
reject({
success: false,
message: errors
})
}
});
});
示例3: submitContactRequest
submitContactRequest(contactRequest: ContactRequest): Observable<Date> {
return this.apollo
.mutate({
mutation: submitContactRequest,
variables: { name: contactRequest.name, email: contactRequest.email, message: contactRequest.message },
})
.pipe(map((result: FetchResult<ContactResponse>) => new Date(result.data.submitContactRequest.sentAt)));
}
示例4: loginWithServiceAccessToken
// tslint:disable-next-line
loginWithServiceAccessToken(service: string, accessToken: string): Observable<ApolloQueryResult<LoginWithServiceAccessTokenMutation.Result>> {
return this.apollo.mutate({
mutation: loginWithServiceAccessTokenMutation,
variables: {
service,
accessToken,
},
});
}
示例5: update
update(id: number, personPatch: any) {
return this.apollo.mutate({
mutation: updateProfile,
variables: {
id: id,
personPatch: personPatch
}
});
}
示例6:
return Observable.create(observer => {
this.apollo.mutate<any>({ mutation: gql`${queryStr}` }).subscribe(res => {
// Clear cache immediatelly on a delete operation
this.apollo.getClient().clearStore()
.catch(ex => Logger.log(ex))
.finally(() => {
observer.next(res);
observer.complete();
});
});
});
示例7: multipleUpload
public multipleUpload(files: FileList | File[]): Observable<FetchResult> {
return this.apollo
.mutate({
mutation: MULTIPLE_UPLOAD,
variables: {
text: '123',
files
}
})
.pipe(map(res => {
return res;
}));
}
示例8: upvote
upvote() {
this.apollo.mutate({
mutation: gql`
mutation upvotePost($postId: Int!) {
upvotePost(postId: $postId) {
id
votes
}
}
`,
variables: {
postId: this.postId,
},
}).subscribe();
}
示例9: generateNextQuestion
generateNextQuestion() {
const nextQuestion = gql`
mutation {
newQuestion {
round
questionNumber
question {
question
}
}
}
`;
return this.apollo.mutate({
mutation: nextQuestion
}).map(res => res.data.newQuestion);
}