๊ณต์ GraphQL ๋ฌธ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก gatsby-transformer-yaml๋ก ์ฟผ๋ฆฌ๋ฅผ ์๋ํ์ต๋๋ค.
https://www.graph.cool/docs/reference/graphql-api/query-api-nia9nushae#traversing -a-single-node
query {
projectsYaml(title: "project1"){
description
keywords
published
}
}
์๋ํ์ง ์์ต๋๋ค. ์ค๋ฅ๋ "Argument \"title\" has invalid value \"project1\".\nExpected \"projectsYamlTitleQueryString_2\", found not an object."
๋ํ ์ด๊ฒ์ ์๋ํ์ต๋๋ค https://www.graph.cool/docs/reference/graphql-api/query-api-nia9nushae#filtering -by-field
query {
allProjectsYaml(filter: {
title: "project1"
}){
edges{
node{
description
keywords
date
}
}
}
}
์ค๋ฅ : Argument \"filter\" has invalid value {title: \"project1\"}.\nIn field \"title\": Expected \"projectsYamlConnectionTitleQueryString_2\", found not an object.",
src /
๋ฐ์ดํฐ/
ํ๋ก์ ํธ /
-project1.yml
-project2.yml
๋ฑ๋ฑ.
์ด๊ฒ์ด ์๋ํ์ง ์์ผ๋ฉด ํน์ ํ์ผ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ ์ค๋ ๋ค๋ฅธ ์๋ฃจ์
์ ์ ์ ํ ์ ์์ต๋๊น?
projectsYaml
๋ง ์ํํ๋ฉด ์ฒซ ๋ฒ์งธ ๋ง ์ป์ ์ ์์ผ๋ฏ๋ก allProjectsYaml
ํ๋ฉด JS์์ ๋ชฉ๋ก์ ํํฐ๋ง ํ ์ ์์ต๋๋ค.
๊ฐ์ธ ๋น ์ ๋ณด-ํด๋ฆฝ ๋ณด๋
์ฒด๊ณ:
์ด์์ฒด์ : Windows 10
CPU : x64 Intel (R) Core (TM) i5-6300HQ CPU @ 2.30GHz
๋ฐ์ด๋๋ฆฌ :
๋
ธ๋ : 10.8.0-D : NodeJSnode.EXE
npm : 6.2.0-D : NodeJSnpm.CMD
๋ธ๋ผ์ฐ์ :
๊ฐ์ฅ์๋ฆฌ : 42.17134.1.0
npm ํจํค์ง :
๊ฐ์ธ ๋น : ^ 1.9.277 => 1.9.277
๊ฐ์ธ ๋น ์ด๋ฏธ์ง : ^ 1.0.55 => 1.0.55
๊ฐ์ธ ๋น ๋งํฌ : ^ 1.6.46 => 1.6.46
gatsby-plugin-react-helmet : ^ 2.0.11 => 2.0.11
๊ฐ์ธ ๋น ํ๋ฌ๊ทธ์ธ ์คํ : ^ 1.6.48 => 1.6.48
๊ฐ์ธ ๋น ์์ค ํ์ผ ์์คํ
: ^ 1.5.39 => 1.5.39
๊ฐ์ธ ๋น ๋ณ์๊ธฐ json : ^ 1.0.20 => 1.0.20
๊ฐ์ธ ๋น-ํธ๋์คํฌ๋จธ-์คํ : ^ 1.6.27 => 1.6.27
๊ฐ์ธ ๋น-ํธ๋์คํฌ๋จธ -yaml : ^ 1.5.18 => 1.5.18
์ค๋ฅ ์์คํ ์ด ์ง์ ๋ ๊ฒฝ๋ก๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
์ค๋ฅ : ์์คํ ์ด ์ง์ ๋ ๊ฒฝ๋ก๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
envinfo.js : 1 Function.e.exports.sync
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:7778
envinfo.js : 1 Object.copySync
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:104976
envinfo.js : 1 Object.t.writeSync.e [writeSync๋ก]
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:123499
envinfo.js : 1
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:124274
envinfo.js : 1 Promise.all.then.e
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:124289
util.js : 16 tryCatcher
[npm] / [gatsby-cli] / [bluebird] /js/release/util.js:16:23
promise.js : 512 Promise._settlePromiseFromHandler
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:512:31
promise.js : 569 Promise._settlePromise
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:569:18
promise.js : 614 Promise._settlePromise0
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:614:10
promise.js : 693 Promise._settlePromises
[npm] / [gatsby-cli] / [bluebird] /js/release/promise.js:693:18
promise.js : 638 Promise._fulfill
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:638:18
promise_array.js : 126 PromiseArray._resolve
[npm] / [gatsby-cli] / [bluebird] /js/release/promise_array.js:126:19
promise_array.js : 144 PromiseArray._promiseFulfilled
[npm] / [gatsby-cli] / [bluebird] /js/release/promise_array.js:144:14
promise.js : 574 Promise._settlePromise
[npm] / [gatsby-cli] / [bluebird] /js/release/promise.js:574:26
promise.js : 614 Promise._settlePromise0
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:614:10
promise.js : 693 Promise._settlePromises
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:693:18
์ค๋ฅ ์ฒ๋ฆฌ๋์ง ์์ ๊ฑฐ๋ถ
์ค๋ฅ : ์์คํ ์ด ์ง์ ๋ ๊ฒฝ๋ก๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
envinfo.js : 1 Function.e.exports.sync
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:7778
envinfo.js : 1 Object.copySync
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:104976
envinfo.js : 1 Object.t.writeSync.e [writeSync๋ก]
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:123499
envinfo.js : 1
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:124274
envinfo.js : 1 Promise.all.then.e
[npm] / [gatsby-cli] / [envinfo] /dist/envinfo.js:1:124289
util.js : 16 tryCatcher
[npm] / [gatsby-cli] / [bluebird] /js/release/util.js:16:23
promise.js : 512 Promise._settlePromiseFromHandler
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:512:31
promise.js : 569 Promise._settlePromise
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:569:18
promise.js : 614 Promise._settlePromise0
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:614:10
promise.js : 693 Promise._settlePromises
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:693:18
promise.js : 638 Promise._fulfill
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:638:18
promise_array.js : 126 PromiseArray._resolve
[npm] / [gatsby-cli] / [bluebird] /js/release/promise_array.js:126:19
promise_array.js : 144 PromiseArray._promiseFulfilled
[npm] / [gatsby-cli] / [bluebird] /js/release/promise_array.js:144:14
promise.js : 574 Promise._settlePromise
[npm] / [gatsby-cli] / [bluebird] /js/release/promise.js:574:26
promise.js : 614 Promise._settlePromise0
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:614:10
promise.js : 693 Promise._settlePromises
[npm] / [gatsby-cli] / [๋ธ๋ฃจ ๋ฒ๋] /js/release/promise.js:693:18
(๋ธ๋ผ์ฐ์ ๊ฐ ์๋ชป๋์์ต๋๋ค. ์ ๋ ์คํ๋ผ, ํฌ๋กฌ, ํ์ด์ด ํญ์ค๋ฅผ ๊ฐ์ง๊ณ ์์ง๋ง ์ด๊ฒ์ด ๊ด๋ จ์ฑ์ด ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
gatsby-config.js
: module.exports = {
siteMetadata: {
title: 'xxx',
},
plugins: [
'gatsby-plugin-react-helmet',
'gatsby-transformer-json',
'gatsby-transformer-sharp',
'gatsby-transformer-yaml',
'gatsby-plugin-sharp',
{
resolve: 'gatsby-source-filesystem',
options: {
name: 'data',
path: './src/data',
},
},
{
resolve: 'gatsby-source-filesystem',
options: {
name: 'projects',
path: './src/data/projects',
},
},
{
resolve: 'gatsby-source-filesystem',
options: {
name: 'img',
path: './src/assets/images',
},
},
],
}
package.json
: ํด๋น ์ฌํญ ์์
gatsby-node.js
: ํด๋น ์์
gatsby-browser.js
: ํด๋น ์์
gatsby-ssr.js
: ํด๋น ์ฌํญ ์์
https://www.gatsbyjs.org/docs/graphql-reference/#filter๋ฅผ ํ์ธ
query { projectsYaml(title: { eq: "project1"})
- eq
๋ ์ ๋ชฉ์ด "project1"๊ณผ ๊ฐ์์ ์๋ฏธํฉ๋๋ค. ๋ค๋ฅธ ์ฐ์ฐ์๋ ์ ๊ท์ ๋ฑ์ ์ฌ์ฉํ์ฌ ne
์ ์ธ๋ฅผ ํ์ฉํฉ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
https://www.gatsbyjs.org/docs/graphql-reference/#filter๋ฅผ ํ์ธ
query { projectsYaml(title: { eq: "project1"})
-eq
๋ ์ ๋ชฉ์ด "project1"๊ณผ ๊ฐ์์ ์๋ฏธํฉ๋๋ค. ๋ค๋ฅธ ์ฐ์ฐ์๋ ์ ๊ท์ ๋ฑ์ ์ฌ์ฉํ์ฌne
์ ์ธ๋ฅผ ํ์ฉํฉ๋๋ค.