Magento2ついでにGruntを

即時反映がしたくてMagento2でLESSからCSSを書き出すときにgruntコマンドを使用するわけだが、これにより吐き出されるCSSは初期状態ではMagento2がデフォルトで持っているCSSの形とは違う。

 

具体的には、

  • ソースマップがコメントとして書き出されている
  • コンプレス設定がなされていない

以上の2点。

 

style-l.cssとstyle-m.cssはただでさえ、いろいろ書かれていて重たいCSSなので、できれば余計な文字列は削除したいものだ。

 

というわけで、下記の設定ファイルを編集する。

 

/dev/tools/grunt/configs/less.jsの大体20行目付近

var lessOptions = {
 options: {
 sourceMap: true,
 strictImports: false,
 sourceMapRootpath: '/',
 dumpLineNumbers: false, // use 'comments' instead false to output line comments for source
 ieCompat: false
 },
 setup: {
 files: {
 '<%= path.css.setup %>/setup.css': '<%= path.less.setup %>/_setup.less'
 }
 },
 updater: {
 files: {
 '<%= path.css.updater %>/updater.css': '<%= path.less.setup %>/_setup.less'
 }
 },
 documentation: {
 files: {
 '<%= path.doc %>/docs.css': '<%= path.doc %>/source/docs.less'
 }
 }
};

 

optionsの中を下記のように変更。

var lessOptions = {
 options: {
 sourceMap: false, //true→falseに変更
 compress : true, //compress追加
 strictImports: false,
 sourceMapRootpath: '/',
 dumpLineNumbers: false, // use 'comments' instead false to output line comments for source
 ieCompat: false
 },
 setup: {
 files: {
 '<%= path.css.setup %>/setup.css': '<%= path.less.setup %>/_setup.less'
 }
 },
 updater: {
 files: {
 '<%= path.css.updater %>/updater.css': '<%= path.less.setup %>/_setup.less'
 }
 },
 documentation: {
 files: {
 '<%= path.doc %>/docs.css': '<%= path.doc %>/source/docs.less'
 }
 }
};

 

これで、grunt less:テーマ名を実行した際にソースマップの非表示とコンプレス反映がなされて、CSSが書き出される。

カテゴリ

この記事のコメント

コメントはないです。

コメントを残す

メールアドレスが公開されることはありません。