根据服务器端渲染或浏览器渲染选择createPages gatsby组件
Choose createPages gatsby component based on server side rendering or browser rendering
我正在使用 createPages
根据某些 JSON 输入自动生成组件,如下所示:
exports.createPages = ({ graphql, boundActionCreators }) => {
const { createPage } = boundActionCreators
return new Promise((resolve, reject) => {
graphql(`
{
allPageJson{
edges {
node {
id
url
}
}
}
}
`).then(result => {
result.data.allPageJson.edges.map(({ node }) => {
createPage({
path: node.url,
component: path.resolve(`./src/templates/page.js`),
context: {
id: node.id,
},
})
})
resolve()
})
})
}
我正在寻找的是一个参数或助手,它告诉我我目前 运行 处于构建模式还是开发模式,所以像这样:
exports.createPages = ({ isBuildMode }) => {
if (isBuildMode) {
console.log('looks like you ran gatsby build')
return
}
console.log('looks like you ran gatsby develop')
}
process.env.NODE_ENV
是您最好的自动取款机。很高兴讨论问题中的其他选项!
我正在使用 createPages
根据某些 JSON 输入自动生成组件,如下所示:
exports.createPages = ({ graphql, boundActionCreators }) => {
const { createPage } = boundActionCreators
return new Promise((resolve, reject) => {
graphql(`
{
allPageJson{
edges {
node {
id
url
}
}
}
}
`).then(result => {
result.data.allPageJson.edges.map(({ node }) => {
createPage({
path: node.url,
component: path.resolve(`./src/templates/page.js`),
context: {
id: node.id,
},
})
})
resolve()
})
})
}
我正在寻找的是一个参数或助手,它告诉我我目前 运行 处于构建模式还是开发模式,所以像这样:
exports.createPages = ({ isBuildMode }) => {
if (isBuildMode) {
console.log('looks like you ran gatsby build')
return
}
console.log('looks like you ran gatsby develop')
}
process.env.NODE_ENV
是您最好的自动取款机。很高兴讨论问题中的其他选项!