Как добавить несколько плагинов Gatsby с помощью файла gatsby-config.js? - PullRequest
1 голос
/ 18 мая 2019

Я пытаюсь добавить дополнительные плагины Gatsby в проект Gatsby. Я хочу добавить «gatsby-plugin-styled-components» в файл gatsby-config.js. Любая помощь будет оценена. Новичок реагирует и быстро учится.

уже добавлен и выкинул ошибки повсюду после запуска npm run build

/**
 * Configure your Gatsby site with this file.
 *
 * See: https://www.gatsbyjs.org/docs/gatsby-config/
 */

 module.exports = {
   plugins: [`gatsby-plugin-emotion`],
 }

gatsby-starter-hello-world@0.1.0 build / Пользователи / jappleman / code / hello-world / tutorial-part-two

сборка Гэтсби

  error We encountered an error while trying to load your site's gatsby-config. 
  Please fix the error and try again.


  Error: /Users/jappleman/code/hello-world/tutorial-part-two/gatsby-config.js:8
     plugins: ['`gatsby-plugin-emotion`],['`gatsby-plugin-styled-components'],
                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  SyntaxError: Unterminated template literal

  - v8-compile-cache.js:226 NativeCompileCache._moduleCompile
    [tutorial-part-two]/[v8-compile-cache]/v8-compile-cache.js:226:18

  - v8-compile-cache.js:172 Module._compile
    [tutorial-part-two]/[v8-compile-cache]/v8-compile-cache.js:172:36

  - loader.js:712 Object.Module._extensions..js
    internal/modules/cjs/loader.js:712:10

  - loader.js:600 Module.load
    internal/modules/cjs/loader.js:600:32

  - loader.js:539 tryModuleLoad
    internal/modules/cjs/loader.js:539:12

  - loader.js:531 Function.Module._load
    internal/modules/cjs/loader.js:531:3

  - loader.js:637 Module.require
    internal/modules/cjs/loader.js:637:17

  - v8-compile-cache.js:159 require
    [tutorial-part-two]/[v8-compile-cache]/v8-compile-cache.js:159:20

  - get-config-file.js:33
    [tutorial-part-two]/[gatsby]/dist/bootstrap/get-config-file.js:33:22

  - Generator.next

  - new Promise

1 Ответ

0 голосов
/ 20 мая 2019

gatsby-config.js экспортирует объект

module.exports = {}

, и в этом объекте указывается plugins, который вы хотите использовать в своем проектекак массив имен плагинов ( strings ), которые вы уже установили в качестве зависимостей для вашего проекта (например, набрав npm install gatsby-plugin-react-helmet или yarn add gatsby-plugin-react-helmet в своем терминале).

module.exports = {
  plugins: [
    `gatsby-plugin-react-helmet`
  ]
}

Однако для корректной работы некоторых из устанавливаемых плагинов могут потребоваться некоторые параметры.Таким образом, каждый из этих плагинов должен быть указан как объект в одном и том же массиве плагинов.И в этом случае значением свойства resolve каждого объекта является имя плагина, за которым обычно следует объект для их собственного options.

module.exports = {
  plugins: [
    `gatsby-plugin-react-helmet`,
    `gatsby-transformer-remark`,
    {
      resolve: `gatsby-source-filesystem`,
      options: {
        name: `src`,
        path: `${__dirname}/src/data/`
      }
    }
  ]
}

Для получения дополнительной информации см. Использование плагина на вашем сайте

Кроме того, учитывая, что ваша ошибка вызвана ошибкой SyntaxError, см. MDN -Template_literals для получения информации о обратных чертах и ​​обычных кавычках, различия между:

`gatsby-plugin-styled-components` & 'gatsby-plugin-styled-components'

и почему следующая строка может вызывать Неопределенный строковой литерал SyntaxError :

plugins: ['`gatsby-plugin-emotion`],['`gatsby-plugin-styled-components']

После этого, если решение неочевидно, попробуйте изменить plugins на одно из следующих значений:

plugins: [`gatsby-plugin-emotion`],[`gatsby-plugin-styled-components`]

или

plugins: ['gatsby-plugin-emotion'],['gatsby-plugin-styled-components']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...