Por ser um nó, gatsby-node.js
usa commonjs, componentes usam módulos ES6.
Digamos que eu queira compartilhar uma função que calcula a lentidão de uma página criada:
/* export ? */ function getSlug(post) {
return `/posts/${post.data}${post.title.toLowerCase()}`
}
/* module.exports = { getSlug }; ? */
Agora eu quero importar esta função tanto em
gatsby-node.js
para usá-lo na API createPage
Posts.js
para vincular aos caminhos de postagem individuais.Como você recomendaria compartilhar o código e lidar com os diferentes sistemas de módulo neste caso?
Pela minha experiência, você pode apenas importar módulos de nó no código do navegador normalmente, a menos que esteja usando APIs de nó. Você está enfrentando algum problema?
// shared.js
function getSlug(post) {
return `/posts/${post.data}${post.title.toLowerCase()}`
}
module.exports = { getSlug }
// Posts.js
import { getSlug } from './path/to/shared.js'
Comentários muito úteis
Pela minha experiência, você pode apenas importar módulos de nó no código do navegador normalmente, a menos que esteja usando APIs de nó. Você está enfrentando algum problema?