2017-03-09 5 views
0

Drupal用のモジュールやテーマを開発する際には、プロジェクト用に外部CSSやJavascriptのプラグインやライブラリを組み込む必要があるかもしれません。
Drupal 8でライブラリを使用してスタイルシート(CSS)ファイルを追加および管理するための標準的なアプローチは何ですか?

Drupalの資産管理は少し複雑で、私は混乱して作る、私は
Adding stylesheets (CSS) and JavaScript (JS) to a Drupal 8 theme
Adding stylesheets (CSS) and JavaScript (JS) to a Drupal 8 module
を読んで、それは明らかにそれを説明していないし、それについていくつか質問がまだあります。

これらのライブラリとスタイルシートは、どのように処理されてWebページに追加されますか? SMACSSカテゴリ(ベース、レイアウト、コンポーネント、状態、テーマ)の順に追加されていますか?ライブラリ-AまたはB(単独それぞれ)で
ThemeName.libraries.yml

library-A: 
    css: 
    # The SMACSS category. 
    base: 
     # The path to the css file. 
     assets/css/stylesheets-1.css: {} 
    theme: 
     assets/css/stylesheets-2.css: {} 

library-B: 
    css: 
    base: 
     # The path to the css file. 
     assets/css/stylesheets-3.css: {} 
    theme: 
     assets/css/stylesheets-4.css {} 

::私はカテゴリを定義する方法例えば
は、次のような構造を検討しますか?最初にThemeとし、次にbaseまたはその逆になるはずですか?基準は何ですか?

完全にライブラリAおよびB:それらの魔法使い最初にロードしますか?ライブラリAまたはB?それぞれが正しいのは何ですか?

答えて

1

1:詳細情報here、基本的にテーマは重さが反転していますがベースを上書きします。

:それは本当にそれは順序を逆ライブラリをロードする

EX、どこで、どのようにあなたがそれらをロードによって異なります。それは本当にあなたが2のため

を書いているかに依存しますので、今、それがガイドラインではないrulleですテーマで

  • ライブラリ:

    • 'mytheme /ライブラリ-B' //弾丸を置き換えます" - "
    • 'mytheme /ライブラリ-A' で弾丸を置き換える// " - " テンプレートに
  • {{attach_library( 'mytheme /ライブラリ-B')}} {{attach_library( 'mytheme /ライブラリ-A')}}

  • モジュールで

    $タイプ[ '要素'] [ '#取り付け'] [ 'ライブラリ'] [] =「mytheme /ライブラリ-B ';$ types ['element'] ['#attached'] ['library'] [] = 'mytheme/library-A';

+0

ありがとうございました。 –

関連する問題