自定义Sass到多站点项目

时间:2019-04-24 14:33:59

标签: laravel laravel-5 webpack sass laravel-mix

我在一个Laravel项目中有3个网站:

https://regalaunpuzzle.es/

https://calendariospersonalizados.es/

https://fotolienzo.com/

这3个网站共享使用webpack和laravel mix编译的相同sass文件。

如何为每个域使用自定义sass?

例如,网站的两种公司颜色在 variables.scss 文件中指明:

from kivy.app import App
from kivy.uix.screenmanager import Screen
from kivy.uix.button import Button
from kivy.storage.jsonstore import JsonStore
from kivy.lang import Builder
from kivy.clock import Clock
import time
import json


class ScreenTwo(Screen):
    pass


Builder.load_string("""
<ScreenTwo>:
    GridLayout:
        id: streak_zone
        cols: 2
""")


class CustomButton(Button):
    def on_touch_down(self, touch):
        if self.collide_point(*touch.pos):
            print(f"\nCustomButton.on_touch_down: text={self.text}")
            self.dispatch('on_press')
            return True
        return super(CustomButton, self).on_touch_down(touch)


class TestApp(App):
    def build(self):
        self.store = JsonStore("streak.json")
        Clock.schedule_once(lambda dt: self.display_btn(), 0.5)

        return ScreenTwo()

    def check_streak(self, instance):
        print(f"\ncheck_streak:")
        honey = float(instance.id)
        print(f"\tdelta={honey}")
        if honey > time.time():
            print("\t\tearly")

        if honey == time.time():
            print("\t\ton time")

        if honey < time.time():
            print("\t\tlate")

    def display_btn(self):
        print(f"\ndisplay_btn:")

        with open("streak.json", "r") as read_file:
            data = json.load(read_file)

            for value in data.values():
                if value['delta'] is not None:
                    print(f"action={value['action']}, delta={value['delta']}")
                    streak_button = CustomButton(id=str(value['delta']), text=value['action'], on_press=self.check_streak)
                    self.root.ids.streak_zone.add_widget(streak_button)


if __name__ == '__main__':
    TestApp().run()

我要在每个域中使用两种不同的颜色。

什么是最好的方法?

这是我的 app.scss ,其中包含de variables.scss 文件:

$brand_color_primary
$brand_color_secondary

1 个答案:

答案 0 :(得分:-1)

这个问题可能有很多解决方案,这是我的观点。我要做的是创建一个好的资源文件系统

resources
    |--assets
    |--web1
    |--web2
    |--web3

然后在assets文件夹中插入所有公用文件,这些文件在每个web文件夹中被调用。 Mix将轻松编译应作为主要CSS的不同website-{n}.css文件。根据网站的不同,每种视图都会加载website-1.csswebsite-2.css,依此类推。