Чтобы создать новый проект Gatsby, вы можете выполнить следующие действия:
Шаг 1. Установите Gatsby CLI глобально, выполнив в терминале следующую команду:
npm install -g gatsby-cli
Шаг 2. Создайте новый проект Gatsby с помощью команды CLI:
gatsby new my-gatsby-project
Эта команда создаст новый каталог под названием my-gatsby-projectс базовой структурой проекта Gatsby.
Шаг 3. Перейдите в каталог проекта:
cd my-gatsby-project
Шаг 4. Запустите сервер разработки:
gatsby develop
Эта команда запустит сервер разработки, и ваш проект Gatsby станет доступен по адресу http://localhost:8000.
Вот несколько дополнительных методов и примеров кода, которые вы можете использовать в своем проекте Gatsby:
-
Создайте новую страницу Gatsby:
Чтобы создать новую страницу, вам необходимо создать новый файл JavaScript в каталогеsrc/pages. Например, создайте файл с именемabout.jsimport React from 'react'; const AboutPage = () => { return ( <div> <h1>About Page</h1> <p>This is the about page content.</p> </div> ); }; export default AboutPage;.
После создания файла вы можете получить доступ к странице по адресу
http://localhost:8000/about. -
Извлечение данных из API GraphQL.
Gatsby имеет встроенную поддержку GraphQL. Вы можете получать данные из API GraphQL и использовать их в своих компонентах Gatsby. Вот пример получения и отображения списка сообщений блога:import React from 'react'; import { graphql } from 'gatsby'; const BlogPage = ({ data }) => { const posts = data.allMarkdownRemark.edges; return ( <div> <h1>Blog</h1> {posts.map(({ node }) => ( <div key={node.id}> <h2>{node.frontmatter.title}</h2> <p>{node.excerpt}</p> </div> ))} </div> ); }; export const query = graphql` query { allMarkdownRemark { edges { node { id frontmatter { title } excerpt } } } } `; export default BlogPage;В этом примере Gatsby извлекает данные из запроса GraphQL и использует их для отображения списка сообщений в блоге.
import React from 'react';
import { Helmet } from 'react-helmet';
const HomePage = () => {
return (
<div>
<Helmet>
<title>My Gatsby Project</title>
<meta name="description" content="Welcome to my Gatsby project!" />
</Helmet>
<h1>Welcome to my Gatsby project!</h1>
</div>
);
};
export default HomePage;
В этом примере компонент Helmetиспользуется для установки заголовка страницы и метаописания.