web-dev-qa-db-ja.com

* Rails 6 *アプリケーションのmanifest.jsonにないapplication.cssをWebpackerがスローする

現在、Rails 6をアプリケーションに使用しています。本番環境では問題なく動作しますが、開発モードではエラーが発生します。支援してください。

これは私のapplication.jsとapplication.cssがどのように見えるかです

packs/application.js

require("@Rails/ujs").start()
require("turbolinks").start()
require("@Rails/activestorage").start()
require("channels")
require("jquery")

import '../stylesheets/application'
import './bootstrap_custom.js'
import './side_menu.js.erb'
//import './sweetalert.js'
import './business_hours.js'
import './admin.js'
import './services.js'
import './user_service.js' 

Packs/stylesheets/application.scss

@import './bootstrap_custom.scss';

$fa-font-path: '~@fortawesome/fontawesome-free/webfonts'; 
@import '~@fortawesome/fontawesome-free/scss/fontawesome';
@import '~@fortawesome/fontawesome-free/scss/solid';
@import './admin_dashboard.scss';
@import './side_menu.css';
@import './fonts.scss'; 
@import './login.css';

enter image description here

2
Siva Ganesh

長い闘争の末、私はこれに対する解決策を見つけました。 @ahmed kamalに感謝します。

名前が同じで拡張子が異なる複数のパック。

i.e:application.scssおよびapplication.js最後の1つだけがwebpackエントリパス構成になります。

シナリオはこちらのブログで説明しています- Rails 6-Webpacker =

ソリューション:

 1. Rename stylesheets/application.scss into stylesheets/style.scss
 2. Import style.scss in application.js like this import '../stylesheets/style'
 3. config/webpacker.yml make below changes
      compile: true
      cache_manifest: true
      extract_css: true

それですべてうまくいきました

1
Siva Ganesh