# Theme compile nach jeder scss Änderung aufrufen?

**URL:** <https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753>\
**Category:** Themes & Design\
**Created:** [13. September 2019 um 08:28 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753 "2019-09-13T08:28:53Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![TassiloDietze](https://avatars.discourse-cdn.com/v4/letter/t/43a26b/32.png) [@TassiloDietze](https://forum.shopware.com/u/TassiloDietze)\
**Post date:** [13. September 2019 um 08:28 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/1 "2019-09-13T08:28:53Z")

</div>

Hallo,

wenn man ein eigenes Theme erstellt und am scss etwas ändert, muss jedes mal der „theme:compile“-Befehl gestartet werden.

Gibt es auch eine Möglichkeit einen watcher (wie storefront:watch) laufen zu lassen damit immer automatisch compiliert wird?

P.S. Ich nehme die Developer Version auf einer VM.

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [13. September 2019 um 11:47 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/2 "2019-09-13T11:47:47Z")

</div>

```
./psh.phar storefront:hot

```

Vorher in der base.html.twig&nbsp;

```
 {% set isHMRMode = false %}

```

auf true setzen

---

<div class="post-metadata">

**Author:** ![TassiloDietze](https://avatars.discourse-cdn.com/v4/letter/t/43a26b/32.png) [@TassiloDietze](https://forum.shopware.com/u/TassiloDietze)\
**Post date:** [13. September 2019 um 12:41 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/3 "2019-09-13T12:41:07Z")

</div>

Ich hab in der “vendor/shopware/platform/src/Storefront/Resources/views/base.html.twig” isHMRMode auf true gesetzt jetzt wird überhaupt kein css mehr geladen, könnte das daran liegen das Shopware in einem Unterverzeichnis (127.0.0.1/sw6) installiert ist ist und nicht direkt?

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [13. September 2019 um 12:46 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/4 "2019-09-13T12:46:07Z")

</div>

Wenn du den Modus aktivierst musst du&nbsp;./psh.phar storefront:hot ausführen, damit die Dateien on-the-fly kompiliert werden.

---

<div class="post-metadata">

**Author:** ![TassiloDietze](https://avatars.discourse-cdn.com/v4/letter/t/43a26b/32.png) [@TassiloDietze](https://forum.shopware.com/u/TassiloDietze)\
**Post date:** [13. September 2019 um 13:02 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/5 "2019-09-13T13:02:33Z")

</div>

Hab ich gemacht es kommt:

```
        > sw-next-storefront@1.0.0 hot /var/www/html/sw6/vendor/shopware/platform/src/Storefront/Resources
        > NODE_ENV=development MODE=hot webpack-dev-server --config webpack.config.js

        ℹ USING WEBPACK CONFIG FILE: ./build/webpack.hot.config.js

        ℹ Compiling Shopware 6 Storefront
        ✔ Shopware 6 Storefront: Compiled successfully in 43.23s
         DONE Compiled successfully in 55420ms12:58:58 PM

```

aber die Seite lädt kein css mehr.

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [17. September 2019 um 09:00 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/6 "2019-09-17T09:00:40Z")

</div>

Hilft dir evtl. dieser Quickfix?&nbsp;[https://github.com/shopware/platform/pull/171/files](https://github.com/shopware/platform/pull/171/files)

Wie schaut im Quelltext unten deine URL aus zu den Javascript Dateien?

---

<div class="post-metadata">

**Author:** ![TassiloDietze](https://avatars.discourse-cdn.com/v4/letter/t/43a26b/32.png) [@TassiloDietze](https://forum.shopware.com/u/TassiloDietze)\
**Post date:** [19. September 2019 um 07:39 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/7 "2019-09-19T07:39:52Z")

</div>

Ich den starken verdacht weil wir den Shop nur über /public aufrufen können wird es daran liegen, habe jetzt über Vagrant einen Shop aufgesetzt und es funktioniert wunderbar.

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [19. September 2019 um 07:46 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/8 "2019-09-19T07:46:37Z")

</div>

Das wird das Problem sein mit /public, ja - Denn /public muss man nicht aufrufen. Dann habt ihr die falsche .htaccess / nginx config. Im Kern ist Shopware 6 eine Symfony Application.

---

<div class="post-metadata">

**Author:** ![imises](https://avatars.discourse-cdn.com/v4/letter/i/b2d939/32.png) [@imises](https://forum.shopware.com/u/imises)\
**Post date:** [19. September 2019 um 08:09 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/9 "2019-09-19T08:09:22Z")

</div>

Bei mir funktioniert die hot reload Funktion prinzipiell. Allerdings gibt es scheinbar noch Probleme mit der Vererbung.  
In meinem Fall wird z.B. das Mixin „media-breakpoint-up(sm)“ nicht gefunden, während des HOT Reloads.  
&nbsp;  
Wenn ich allerdings das Theme compile „./bin/console theme:compile“ funktioniert alles ohne Probleme.

Hat dazu jemand eine Idee?

> ✔ Shopware 6 Storefront: Compiled with some errors in 5.62s  
> &nbsp;ERROR &nbsp;Failed to compile with 1 errors9:55:09 AM
> 
> &nbsp;error &nbsp;in /project/path/custom/plugins/MyTheme/src/Resources/storefront/style/base.scss
> 
> Module build failed (from /project/path/platform/src/Storefront/Resources/node\_modules/sass-loader/lib/loader.js):
> 
> &nbsp; &nbsp; @include media-breakpoint-up(sm) {  
> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ^  
> &nbsp; &nbsp; &nbsp; No mixin named media-breakpoint-up  
> &nbsp; &nbsp; &nbsp; in /project/path/custom/plugins/MyTheme/src/Resources/storefront/style/layout/\_header.scss (line 8, column 14)
> 
> &nbsp;@ /project/path/custom/plugins/MyTheme/src/Resources/storefront/style/base.scss 2:14-443 21:1-42:3 22:19-448  
> &nbsp;@ multi ./src/script/main.js ./src/style/base.scss /project/path/custom/plugins/MyTheme/src/Resources/storefront/style/base.scss

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [19. September 2019 um 08:22 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/10 "2019-09-19T08:22:22Z")

</div>

Ja, dass ist eine Qual - Ich habe auch noch nicht heraus gefunden, wie man sauber extended.

Das Problem liegt das du die core bootstrap Dateien nicht drin hast.

Meine main.scss sieht wie folgt aus:

```
@import 'skin/myskin/abstract/variables';

/*
 * Vendors
 * ------- */
@import 'vendor/bootstrap';
@import 'vendor/tiny-slider';

@import "skin/myskin/.....
.....

```

Den vendor Ordner habe ich mir aus dem Core theme rüber kopiert. =\>&nbsp;[https://github.com/shopware/platform/tree/master/src/Storefront/Resources/src/style/vendor](https://github.com/shopware/platform/tree/master/src/Storefront/Resources/src/style/vendor)

hot-reload funktioniert, aber leider nicht der build mode, da bekommst du dann den Fehler:

```
(3/4) Starting
> bin/console theme:compile
	Start theme compilation
	
	In Parser.php line 133:
	                              
	  Unopened { [line no: 7708] 

```

Aber zumindest funzt der hot-reload 🙂

---

<div class="post-metadata">

**Author:** ![mdsw](https://avatars.discourse-cdn.com/v4/letter/m/94ad74/32.png) [@mdsw](https://forum.shopware.com/u/mdsw)\
**Post date:** [23. September 2019 um 19:57 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/11 "2019-09-23T19:57:38Z")

</div>

Bei mir findet er relative Pfade nicht - mit **bin/console theme:compile** gehts:&nbsp;

&nbsp;

```
 > sw-next-storefront@1.0.0 hot /home/vagrant/shopware-dev/vendor/shopware/platform/src/Storefront/Resources
        > NODE_ENV=development MODE=hot webpack-dev-server --config webpack.config.js
        
        ℹ USING WEBPACK CONFIG FILE: ./build/webpack.hot.config.js
        
        ℹ Compiling Shopware 6 Storefront
        ✔ Shopware 6 Storefront: Compiled with some errors in 6.75s
         ERROR Failed to compile with 8 errors7:47:19 PM
        
        These relative modules were not found:

* ../../../bundles/prefixPlatformPlugin/storefront/font/prefix-Pluginfont.eot?2opjo1 in ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/src??ref--8-2!./node_modules/sass-loader/lib/loader.js!./node_modules/sass-resources-loader/lib/loader.js??ref--8-4!/home/vagrant/shopware-dev/custom/plugins/prefixPlatformPlugin/src/Resources/storefront/style/vendor/font.scss

[...]

@font-face {
[...]
    src: url('../../../bundles/prefixPlatformPlugin/storefront/font/prefix-Pluginfont.eot?2opjo1');
}

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![benson](https://avatars.discourse-cdn.com/v4/letter/b/ea5d25/32.png) [@benson](https://forum.shopware.com/u/benson)\
**Post date:** [8. November 2019 um 09:53 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/12 "2019-11-08T09:53:07Z")

</div>

Hi,

gibt es hier etwas Neues?  
Hab nach wie vor das Problem mit den relativen Pfaden zu Assets in den Sass-Files.

Die Pfade&nbsp;auskommentiert, funktioniert alles…

---

<div class="post-metadata">

**Author:** ![mdsw](https://avatars.discourse-cdn.com/v4/letter/m/94ad74/32.png) [@mdsw](https://forum.shopware.com/u/mdsw)\
**Post date:** [29. März 2020 um 13:03 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/13 "2020-03-29T13:03:17Z")

</div>

Habe immer noch das Problem mit den relativen Pfaden…&nbsp;  
Gibt es hier eine Lösung?

---

<div class="post-metadata">

**Author:** ![mamamia](https://avatars.discourse-cdn.com/v4/letter/m/b3f665/32.png) [@mamamia](https://forum.shopware.com/u/mamamia)\
**Post date:** [5. April 2020 um 18:18 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/14 "2020-04-05T18:18:40Z")

</div>

ich hab mir jetzt dadurch beholfen, dass ich dateien in den public-ordner werfe und bin/console install:assets ausführe.  
ob dies bei der normalen plugin-installation ausgeführt wird muss ich noch testen

in den original-scss files ist der verweis zu z.b. schriften so drin:&nbsp; &nbsp; url(’#{$asset-path}/…’)

allerdings wird die variable nicht an das theme angepasst sondern gibt immer den pfad zum shopware-basis-theme aus… oder mach ich hier was falsch?

&nbsp;

---

<div class="post-metadata">

**Author:** ![mdsw](https://avatars.discourse-cdn.com/v4/letter/m/94ad74/32.png) [@mdsw](https://forum.shopware.com/u/mdsw)\
**Post date:** [22. Dezember 2020 um 09:01 UTC](https://forum.shopware.com/t/theme-compile-nach-jeder-scss-anderung-aufrufen/61753/15 "2020-12-22T09:01:32Z")

</div>

> <https://github.com/shopware/storefront/blob/trunk/Resources/views/storefront/base.html.twig#L2>

&nbsp;

Hat jemand eine Idee wofür der Wert&nbsp;app.request.headers.get(‘hot-reload-mode’) beim isHMRMode ist? Der Value ist bei mit null, aber könnte man den Hot Reload Mode auch irgendwo in der config einschalte? Wozu ist das gedacht?
