2017-09-10 3 views
-1

Ich muss jedem Kunden erlauben, sein eigenes Thema anzupassen. Mein Problem ist, wie Sie wissen, welches Thema angezeigt werden soll, bevor sich jemand anmeldet.So erstellen Sie mehrere Designs (CSS) für verschiedene Clients

Meine Idee ist es, für jeden Client eine Subdomain zu verwenden.

kann mich jemand auf eine Anleitung für Best Practice zeigen, wie dies zu implementieren? Ich benutze Angular 4 für meine Kundenseite.

Danke.

+0

Wenn Sie Sub-Domains verwenden Sie ein teureres Zertifikat erworben werden müssen, außer sie verkaufe nicht alle. Ich hoffe, Sie verwenden https? –

+0

Derzeit verwende ich http, aber in Zukunft wird https verwenden. Ich habe nichts dagegen, ein bisschen mehr für das SSL-Zertifikat zu zahlen, die Frage ist, was ist die beste Praxis für die Umsetzung dieser? Verwendet Sub-Domains den richtigen Ansatz? – Shay

+0

ich denke nicht. hängt davon ab, wie tief die Oberfläche in Themen verarbeitet wird. versuchen Sie, nur css –

Antwort

0

1) Bad-Lösung (Änderung 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) Gute Lösung

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'); } 
Verwandte Themen