2014-09-05 18 views
5

Voglio usare sass/scss in un nuovo progetto, ma in qualche modo non funziona. Sto usando il yii2-asset-convertitore e quando cerco di convertire lo SCSS file, viene lanciato il seguente errore:Come usare SASS/SCSS in Yii2?

Class @app/extensions/assetparser/vendors/phamlp/sass/SassParser does not exist

Sto controllando il ../phamlp/ percorso e comunicazione, che il Folder sass resp. SassParser.php non esiste. Il SassParser.php si trova nel fornitore di estensione/richthegeek/phpsass, che è richiesto da yii2-asset-converter.

Ho provato alcuni percorsi come: @ vendor/richthegeek/phpsass o

__DIR__/../../vendor/richthegeek/phpsass 

Ma non ha funzionato .Dopo un sacco di tentativi infruttuosi spero che alcuni di voi sanno come risolvere il problema.

PS: Io uso il modello di applicazione avanzata

risposta

4

Non utilizzare PhalmP o phpsass. Questi sono obsoleti. Non otterrai mai risultati soddisfacenti con loro, specialmente quando usi le moderne librerie Sass.

Utilizzare Sass originale come standalone.

È sufficiente installare Ruby (potrebbe già averlo) e Sass e utilizzare lo strumento da riga di comando sass da compilare.

Inoltre, l'utilizzo di Compass potrebbe semplificarti la vita. Compass aiuta a organizzare il tuo codice Sass e fornisce anche una libreria Sass con molti utili aiutanti.

0

È possibile utilizzare this plugin.

Ma è necessario combinare il codice sass in un unico file.

Ecco esempio di config/web.php

'assetManager'=>[ 
     'converter'=>[ 
      'class'=> 'nizsheanez\assetConverter\Converter', 
      'force'=> true, // true : If you want convert your sass each time without time dependency 
      'destinationDir' => '', //at which folder of @webroot put compiled files 
      'parsers' => [ 
       'scss' => [ // file extension to parse 
        'class' => 'nizsheanez\assetConverter\Scss', 
        'output' => 'css', // parsed output file type 
        'options' => [ // optional options 
         'enableCompass' => true, // default is true 
         'importPaths' => ['/sass','/sass/_offers'], // import paths, you may use path alias here, 
         // e.g., `['@path/to/dir', '@path/to/dir1', ...]` 
         'lineComments' => true, // if true — compiler will place line numbers in your compiled output 
         'outputStyle' => 'expanded', // May be `compressed`, `crunched`, `expanded` or `nested`, 
         // see more at http://sass-lang.com/documentation/file.SASS_REFERENCE.html#output_style 
        ], 
       ], 
      ] 
     ] 
    ]