Como es un nodo, gatsby-node.js
usa commonjs, los componentes usan módulos ES6.
Digamos que quiero compartir una función que calcula el slug de una página creada:
/* export ? */ function getSlug(post) {
return `/posts/${post.data}${post.title.toLowerCase()}`
}
/* module.exports = { getSlug }; ? */
Ahora quiero importar esta función tanto en
gatsby-node.js
para usarlo en la API createPage
Posts.js
para vincular a las rutas de publicación individuales.¿Cómo recomendaría compartir código y tratar con los diferentes sistemas de módulos en este caso?
Según mi experiencia, puede importar módulos de nodo en el código de su navegador como de costumbre, a menos que esté utilizando API de nodo. ¿Tiene algún 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'
Comentario más útil
Según mi experiencia, puede importar módulos de nodo en el código de su navegador como de costumbre, a menos que esté utilizando API de nodo. ¿Tiene algún problema?