如何为不同的客户创建多个主题(css)

时间:2017-09-10 07:58:48

标签: javascript css angular sass themes

我需要允许每个客户自定义它自己的主题。 我的问题是如何知道在有人登录之前显示哪个主题。

我的想法是为每个客户使用子域。

任何人都可以向我指出如何实施此方法的最佳实践指南? 我在我的客户端使用Angular 4。

感谢。

1 个答案:

答案 0 :(得分:0)

1)解决方案不好(改为css)

temporalScriptRender() { 
    setTimeout(() => {
      var s2 = document.createElement("script");
      s2.type = "text/javascript";
      s2.src = "/assets/js/scripts.js";
      this.elementRef.nativeElement.appendChild(s2);
     }, 1000)
}

2)好的解决方案

 constructor (@Inject(DOCUMENT) private document) { }

        FirstTheme() {
            this.document.getElementById('theme').setAttribute('href', 'first-theme.css'); }


        SecondTheme() {
            this.document.getElementById('theme').setAttribute('href', 'second-theme.css'); }