GraphQLError: Syntax Error: Cannot parse the unexpected character "\u00A0"
GraphQLError: Syntax Error: Cannot parse the unexpected character "\u00A0"
当我使用 gql(来自 'graphql-tag')创建 query/mutation/subscription 时出现错误。
有没有人遇到过这个错误并且知道如何解决?
这是我的代码:
import React from 'react';
import { Mutation } from 'react-apollo';
import MUTATION from './query.js';
import gql from 'graphql-tag';
const ADD_POST_MUTATION = gql`
mutation addPost($content: String!, $author: String!) {
addPost(content: $content, author: $author) {
content
author
}
}
`;
export default class Tool extends React.Component {
state = {
content: '',
author: localStorage.getItem('user') || ''
};
handleSubmit = (e, mutation) => {
console.log(mutation);
e.preventDefault();
mutation({ variables: { content: this.state.content, author: this.state.author }})
.then(res => console.log(res))
.catch(e => console.log(e));
}
render() {
return (
<Mutation mutation={MUTATION}>
{(addPost, { data }) => (
<div>
<div>Poster un commentaire</div>
<form onSubmit={e => this.handleSubmit(e, addPost)}>
<textarea onChange={e => this.setState({ content: e.target.value })}></textarea>
<button type='submit'>Poster</button>
</form>
</div>
)}
</Mutation>
);
}
};
此查询再次出现错误:
const FETCH_POST_QUERY = gql`
query {
getPost {
id
content
author
}
}
`;
我遇到了这个错误:
已解决!
graphql-tag 有问题,我不得不重写以确保没有不间断 space!
复制您的 GQL 代码并使用其他编辑器(如 TextEdit)粘贴为纯文本,然后复制纯文本并粘贴回 VSCode。
VSCode 用户可以下载名为 “非破坏性 space 荧光笔” 的插件,它将以红色突出显示所有 NBSP,以便于查找。从您的 gql 查询中删除它们,错误就会消失。我相信其他编辑器也有类似的插件。
当我使用 gql(来自 'graphql-tag')创建 query/mutation/subscription 时出现错误。
有没有人遇到过这个错误并且知道如何解决?
这是我的代码:
import React from 'react';
import { Mutation } from 'react-apollo';
import MUTATION from './query.js';
import gql from 'graphql-tag';
const ADD_POST_MUTATION = gql`
mutation addPost($content: String!, $author: String!) {
addPost(content: $content, author: $author) {
content
author
}
}
`;
export default class Tool extends React.Component {
state = {
content: '',
author: localStorage.getItem('user') || ''
};
handleSubmit = (e, mutation) => {
console.log(mutation);
e.preventDefault();
mutation({ variables: { content: this.state.content, author: this.state.author }})
.then(res => console.log(res))
.catch(e => console.log(e));
}
render() {
return (
<Mutation mutation={MUTATION}>
{(addPost, { data }) => (
<div>
<div>Poster un commentaire</div>
<form onSubmit={e => this.handleSubmit(e, addPost)}>
<textarea onChange={e => this.setState({ content: e.target.value })}></textarea>
<button type='submit'>Poster</button>
</form>
</div>
)}
</Mutation>
);
}
};
此查询再次出现错误:
const FETCH_POST_QUERY = gql`
query {
getPost {
id
content
author
}
}
`;
我遇到了这个错误:
已解决!
graphql-tag 有问题,我不得不重写以确保没有不间断 space!
复制您的 GQL 代码并使用其他编辑器(如 TextEdit)粘贴为纯文本,然后复制纯文本并粘贴回 VSCode。
VSCode 用户可以下载名为 “非破坏性 space 荧光笔” 的插件,它将以红色突出显示所有 NBSP,以便于查找。从您的 gql 查询中删除它们,错误就会消失。我相信其他编辑器也有类似的插件。