включить --display-error-details в веб-пакете для отладки импорта модулей - PullRequest
0 голосов
/ 15 октября 2019

работает над проблемой, когда мне нужно включить эту опцию webpack.stats для кли в целях отладки.

В базовом webpack.config параметры статистики не включены, поэтому его необходимо выполнить другим способом.

DevServer также разделен на собственный файл .js и не указан в списке по умолчанию. webpack.config

Я пытался напрямую добавить этот параметр в базовую конфигурацию веб-пакета, я также исследовал и рассмотрел функциональность в dev-server, чтобы увидеть, если это настройка, я могу просто добавить строкукод, но не повезло. Например, я просмотрел функцию stats.hasErrors () и узнал о параметре

stats.toJson({
errorDetails: true
})

То, что я считаю соответствующими частями кода, которые необходимо обновить dev-server.js

).then(config => {
    if (options.debugWebpack) {
      logConfig('Manager webpack config', config, logger);
    }
    return new Promise((resolve, reject) => {
      webpack(config).watch(
        {
          aggregateTimeout: 1,
        },
        (err, stats) => {
          managerTotalTime = process.hrtime(startTime);
          if (!resolved && (err || stats.hasErrors())) {
            const error = new Error('Manager build is broken');
            error.error = err;
            error.close = true;
            error.stats = stats;
            logger.line();
            logger.line();

Я хочу иметь возможность выполнить что-то вроде следующего:

yarn storybook --display-error-details

Ссылка на репо: https://github.com/storybookjs/storybook/tree/next/lib/core/src/server Спасибо за любую помощь!

1 Ответ

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

Итак, я получил одобрение от репо, сделав следующее: dev-server.js

 managerTotalTime = process.hrtime(startTime);
          if (!resolved && (err || stats.hasErrors())) {
            const error = new Error('Manager build is broken');
            error.error = err;
            error.close = true;
            error.stats = stats;
            stats.toJson({
               errorDetails: true
            })
            logger.line();
            logger.line();
...