我正在使用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')
}
答案 0 :(得分:0)
process.env.NODE_ENV
是你最好的选择。很高兴在一个问题上讨论其他选项!