server를 생성했다면 nodemon이 서버가 정상적으로 작동 되고 있다는 메시지와 함께
서버의 링크를 알려주는데 그 링크로 윈도우를 띄워보면 playgound를 볼 수 있습니다.
강의 대로라면 localhost:4000
으로 나와야하는데 저의 경우에는 0.0.0.0:4000/graphql이라는 링크가 나왔습니다. 갈길이 멀어서 아직 왜 그런지에 대해서는 해결하지 못 했습니다.
resolver.js
const jennie = {
name: "jennie",
age: 20,
gender: "female"
};
const resolvers = {
Query: {
person: () => jennie,
}
}
export default resolvers;
schema.js
import { buildSchema } from "graphql";
const schema = buildSchema(`
type Tia {
name: String!
age: Int!
gender: String!
}
type Query {
person: jennie!
}
`);
export default schema;
위의 person을 db파일로 분할해 작성해보겠습니다.
db.js
export const people = [
{
id: "0",
name: "jennie",
age: 20,
gender: "female"
},
{
id: "1",
name: "rose",
age: 20,
gender: "female"
},
{
id: "2",
name: "lisa",
age: 20,
gender: "female"
},
{
id: "3",
name: "jisoo",
age: 20,
gender: "female"
},
];
export const getById = id => {
const filteredPeople = people.filter(person => person.id === +id);
return filteredPeople[0];
}
resolver.js
import { people, getById } from "./db";
const resolvers = {
Query: {
people: () => people,
person: (_, { id }) => getById(id),
}
}
export default resolvers;
schema.js
import { buildSchema } from "graphql";
const schema = buildSchema(`
type Person {
id: Int!
name: String!
age: Int!
gender: String!
}
type Query {
people: [Person]!
person(id: Int!): Person
}
`);
export default schema;