Как сделать угловой 7 динамический стиль - PullRequest
0 голосов
/ 08 декабря 2018

Я работаю над угловой пользовательской панелью с поддержкой нескольких языков.Моя цель - создать многоязыковую панель, которая бы имела два стиля стилей: RTL и LTR в зависимости от языка.Прямо сейчас у меня есть 2 переменные, которые имеют направления RTL и LTR в моем SCSS, и, переключая их вручную, я могу получить нужный мне стиль, но вопрос в том, как я могу сделать 2 сборки из этой SCSS и переключить их на веб-сайтелюбым возможным решением, таким как изменение стилей, href url или заставить nginx обслуживать разные файлы по значению cookie.У кого-нибудь есть решение для этого?

пример:

$same_direction: ltr;
$same_direction_text: left;
$cont_direction: rtl;

//$same_direction: rtl;
//$same_direction_text: right;
//$cont_direction: ltr;

body {
    direction: $same_direction;
}

1 Ответ

0 голосов
/ 08 декабря 2018

Я думаю, что проще всего проверить это в AppComponent.

Мы добавляем BaseComponent, который имеет алгоритм проверки файлов и вызова компонента.

export class BaseComponent implements OnInit {

public ngOnInit() {
    const res = true; //set here method of change 
    if (res) {
       require("style-loader!./../style2.scss");
    } else {
       require("style-loader!./../style.scss");
    }
 }
}

В AppComponent

export class AppComponent extend BaseComponent implements OnInit {

public ngOnInit() {
   super.ngOnInit();
   ...
 }
}

Мое мнение, что nginx не должен этого делать.Потому что после миграции на другой домен ваш проект зависит от nginx.Проект не является независимым в этом случае.И если вы используете SPA-маршрутизацию, не обрабатывает nginx.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...