hjgreen/silverstripe-laravel-mix

Laravel Mix for Silverstripe

Installs: 6

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 1

Forks: 1

Open Issues: 1

Type:silverstripe-vendormodule

v0.0.1 2022-02-21 10:51 UTC

This package is auto-updated.

Last update: 2024-03-29 04:46:24 UTC


README

Support for Laravel Mix, including Webpack Hot Module Replacement.

Not recommended for use in production whilst under development.

Usage

This example assumes a theme has been configured and that Laravel Mix is configured to output in the dist/ directory of the theme.

use HJGreen\SilverstripeLaravelMix\Mix;
use SilverStripe\CMS\Controllers\ContentController;
use SilverStripe\Control\Director;
use SilverStripe\View\Requirements;
use SilverStripe\View\ThemeResourceLoader;

class PageController extends ContentController {
    public function init(){
        parent::init();
        
        if (Director::isDev()) {
            Requirements::css(Mix::resolve('/dist/styles.css'));
            Requirements::javascript(Mix::resolve('/dist/index.js'));
        } else {
            $theme = ThemeResourceLoader::inst();
            Requirements::css($theme->findThemedCSS('/dist/styles.css'));
            Requirements::javascript($theme->findThemedJavascript('/dist/index.js'));
        }
    }
}