2017-08-09 2 views
1

こんにちは、現在、私はlaravelページを作成しようとしています。Laravelはコントローラとビューの色を定義するために1か所を使用しています

私はコントローラのjs/jqueryチャートのデータと色を構築しています。 でも、私の一般的なアプリレイアウトのCSSファイルで同じ色を使用しています。

ここで、コントローラー内のすべてのチャートの色と、CSSファイルのレイアウトを変更できるように色を設定したいのですが?

"bad"#ff0000の色があるとしましょう。#ce2500のような赤の色調に変更したいのですが、すべての色を変更したくありません。

あなたは私が推測する考えを得ることができますか?

ここで何か全く考えていないと思っていますか?私がこれまで行ったこと

EDIT:私のアプリは、特定のスタイルに滞在するためのCSSファイル内

は、私は私の色を定義しました。 custom.css.php:

--color_bad: #ff0000; 
--color_good: #00a6eb; 
--color_text: #000000; 
--color_bg1: #e6e6e6; 
--color_bg2: #b3b3b3; 
--color_border: #4d4d4d; 
--color_caption: #ffffff; 

私もコントローラの設定でこれをやった:

// COLORS 

'color_bad' => '#ff0000', 
'color_good' => '#00a6eb', 
'color_text' => '#000000', 
'color_bg1' => '#e6e6e6', 
'color_bg2' => '#b3b3b3', 
'color_border' => '#4d4d4d',  
'color_caption' => '#ffffff', 

CSSファイルを介しCSS変数を使用してIMとconfig('colors.color_bad')コントローラの

だから私は色が定義されているアプリで2点にそれを持ってきた と私は1つの場所にもっと遠くに壊したいと思った

+1

(https://davidwalsh.name/sass-color-variables-dont-suck)。しかし、あなたは本当に "新しい"言語/コンパイラなしでそれをしたい場合は、あなたはそれをconfigに追加することができます。私はすべての変数を渡して、ビューのレンダリング関数を呼び出すだけです。もしそれが正しいならば/ =少なくともtahtな方法ですが、私は '' js''の部分については、スタイリングではなくクラスを追加します(懸念の分離) –

+0

私の最初の考えだった=/ – user3665396

答えて

2

アプリケーション全体でグローバルに使用されるほとんどの定数については、設定ファイルに格納するだけで十分です。それもかなりシンプルです

app/configディレクトリに新しいファイルを作成します。それをconstants.phpと呼ぶことにしましょう。

そこには、設定値の配列を返す必要があります。

return [ 
    'langs' => [ 
     'es' => 'www.domain.es', 
     'en' => 'www.domain.us' 
     // etc 
    ] 
]; 

そして

Config::get('constants.langs'); 

//またはあなたが特定の1 コンフィグをしたい場合は::( 'constants.langs.en')を取得し、次のようにあなたがそれらにアクセスすることができます。 そして、あなたは同様にそれらを設定することができます

何 `SASS`と` LESS`は[ために考案されました]こと
Config::set('foo.bar', 'test'); 
+0

と呼ばれる前にそれらを定義することなく色を渡すことができる方法を知っている、私はすべてのコントローラのためにそこにそれらを格納したが、私はCSSファイルの設定にアクセスできない?または、私はそれに条件がないと思っても、すべてのビューに色を渡すはずですか? – user3665396

+0

@ user3665396また、あなたはcssの傾きCSSを与えなければならないか、コントローラーの見方の中でコントローラーにアクセスしないでください。 –

+0

これはcss定数を格納するのに悪い場所だと思います。しかし、はいそれは動作します。 –

関連する問題