Rails Webpacker больше не испускает CSS - PullRequest
1 голос
/ 10 апреля 2019

Я обновил webpacker с (4.0.0.pre.3) до (4.0.2), и он больше не излучает мой CSS.На снимке экрана показан журнал выбросов с (4.0.0.pre.3) и (4.0.2) справа.

enter image description here

My App.jsx моя точка входа, и она импортирует app.scss.В моем babel.rc

{
  presets: [
    '@babel/preset-react',
    ['@babel/preset-env', {
      targets: "last 2 versions"
    }]
  ],
  plugins: [
    '@babel/plugin-proposal-class-properties',
    '@babel/plugin-proposal-export-default-from',
    ['react-css-modules', {
      'filetypes': {
        '.scss': {
          'syntax': 'postcss-scss'
        }
      },
      'generateScopedName': '[name]__[local]--[hash:base64:5]'
    }]
  ]
}

config/webpack/environment.js есть следующее:

const { environment } = require('@rails/webpacker')
const merge = require('webpack-merge')

const customCssLoaderOptions = {
  localIdentName: '[name]__[local]--[hash:base64:5]',
  // minimize: environment.NODE_ENV === 'production',
  modules: true
}

const CSSLoader = environment.loaders.get('sass').use.find(el => el.loader === 'css-loader')

CSSLoader.options = merge(CSSLoader.options, customCssLoaderOptions)

environment.config.set('entry.App', './app/javascript/packs/App.jsx')

module.exports = environment

Я закомментировал параметр minimize, поскольку он вызывал сбой новой версии, но яне думаете, что это приводит к тому, что мой CSS вообще не генерируется?

config/webpack/development.js:

const environment = require('./environment')

module.exports = environment.toWebpackConfig()

Ответы [ 2 ]

1 голос
/ 05 июня 2019

Не уверен, почему Webpacker 4+ не генерирует CSS-файлы, но вы можете создать их, обновив строку 20 в настройках config/webpacker.yml extract_css как true.

 19 # Extract and emit a css file
 20 extract_css: true
1 голос
/ 23 мая 2019

Не уверен, что это именно та проблема, но в соответствии с Руководством по обновлению Webpacker 4.x вы должны заменить файл .babelrc на babel.config.js (среди прочих изменений).

Однако я также обновляюсь до версии 4.x и все еще не получаю излучения CSS даже после всех шагов, описанных в этом руководстве.Если вам удалось решить проблему, вернитесь, чтобы поделиться информацией о том, как.

РЕДАКТИРОВАТЬ:

Мой коллега только что сообщил мне, что CSS-файлы (по крайней мере, в нашей кодовой базе Rails + Webpacker) теперь необходимобыть filename.module.css, с оператором import, обновленным, чтобы соответствовать, конечно.

Надеюсь, что поможет кому-то еще!

...