postcss-svgo: TypeError: Невозможно установить свойство 'multipassCount' из неопределенного (Гэтсби) - PullRequest
13 голосов
/ 30 октября 2019

В проекте Gatsby 2.17.6 при сборке:

Построение продукции Пакеты JavaScript и CSS [====
] 1.940 с 1/6 17% не удалось выполнить запросы Построение производстваПакеты JavaScript и CSS - 75,519 с

ОШИБКА # 98123 WEBPACK

Сбой при создании пакетов JavaScript

postcss-svgo: TypeError: Невозможно установить свойство 'multipassCount' из undefined

невыполненные запросы на выполнение - 77.639s npm ERR! код ELIFECYCLE npm ERR! errno 1 npm ERR! gatsby-starter-default@1.0.0 build: узел node_modules / gatsby / dist / bin / gatsby.js build` npm ERR! Состояние выхода 1

Вот некоторые из моих зависимостей:

"dependencies": {
    "babel-plugin-styled-components": "^1.8.0",
    :
    "gatsby": "^2.0.19",
    "gatsby-plugin-favicon": "^3.1.4",
    "gatsby-plugin-google-fonts": "0.0.4",
    "gatsby-plugin-offline": "^2.0.5",
    "gatsby-plugin-react-helmet": "^3.0.0",
    "gatsby-plugin-styled-components": "^3.0.1",
    :
    "react": "^16.5.1",
    "react-dom": "^16.5.1",
    "react-helmet": "^5.2.0",
    "react-leaflet": "^2.1.1",
    "styled-components": "^4.1.1"
  }

Я не вижу никаких конфигураций для postcss в gatsby-config.js, я думаю, это поведение по умолчаниюГэтсби. npm ls postcss-svgo скинуть это:

gatsby-starter-default@1.0.0 /<app>/source
└─┬ gatsby@2.17.6
  └─┬ optimize-css-assets-webpack-plugin@5.0.3
    └─┬ cssnano@4.1.10
      └─┬ cssnano-preset-default@4.0.7
        └── postcss-svgo@4.0.2 

Я не против отключить postcss-svgo, если это решение, но я не знаю, как.

Ответы [ 4 ]

8 голосов
/ 30 октября 2019

мой проект решен, используйте npm install svgo@1.3.0 -E, подробнее см .: https://github.com/svg/svgo/issues/1174

5 голосов
/ 30 октября 2019

"resolutions": { "svgo": "1.3.0" }

Добавьте вышеприведенное в ваш "package.json", а затем rm -rf node_modules, чтобы удалить "node_modules", а затем снова переустановите "node_modules".

Это решит проблему,Эта проблема связана с последней версией postcss-svgo.

0 голосов
/ 31 октября 2019

Работает.

  • $ npm install -g svgo
  • удалить node_modules и package-lock.json
  • $ npm install
  • построить проект
0 голосов
/ 30 октября 2019

Была выпущена версия svgo 1.3.2, и эта ошибка предлагается исправить

Итак, этого будет достаточно, чтобы удалить директорию node_modulesи файл package-lock.json, и сделать новую npm установку или установку пряжи

В любом случае, благодаря другим пользователям, предложившим откат svgo до версии 1.3.0

...