Gatsby: ¿Forma recomendada de compartir código entre gatsby-node.js y componentes?

Creado en 9 oct. 2019  ·  1Comentario  ·  Fuente: gatsbyjs/gatsby

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

  • en gatsby-node.js para usarlo en la API createPage
  • en 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?

question or discussion

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?

// shared.js
function getSlug(post) {
   return `/posts/${post.data}${post.title.toLowerCase()}`
}

module.exports = { getSlug }
// Posts.js
import { getSlug } from './path/to/shared.js'

>Todos los comentarios

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'
¿Fue útil esta página
0 / 5 - 0 calificaciones