2017-09-13 4 views
0

Je travaille sur un projet aspnetboilerplate Angular 4, je veux remplacer les fichiers css pour les langages RTL. Si ce n'est pas possible en raison des pages statiques générées par Angular Cli, faites-moi savoir comment je peux sélectionner un fichier index.html différent (par exemple index-ar.html) pour le langage RTL, en fonction de la langue actuelle dans le code ci-dessous:aspnetboilerplate Angular Cli switch css pour les langages RTL

 app.Use(async (context, next) => 
     { 
      await next(); 
      if (context.Response.StatusCode == 404 
       && !Path.HasExtension(context.Request.Path.Value)) 
      { 
       context.Request.Path = "/index.html"; 
       await next(); 
      } 
     }); 

dans le code ci-dessus, il est toujours la sélection index.html, donc je veux vérifier la langue en cours et que vous souhaitez définir le chemin de l ' « indice-rtl.html ».

Répondre

0

j'ai pu résoudre le problème en utilisant le code suivant:

  if (context.Response.StatusCode == 404 
       && !Path.HasExtension(context.Request.Path.Value)) 
      { 
       string culture = "en"; 
       if (context.Request.Cookies.ContainsKey("Abp.Localization.CultureName")) 
       { 
        culture = context.Request.Cookies["Abp.Localization.CultureName"]; 
       } 

       if (context.Request.Path.Value == "app/ar" || culture=="ar") 
        context.Request.Path = "/ar/index.html"; 
       else 
        context.Request.Path = "/index.html"; 
       await next(); 
      } 

j'ai deux fichiers d'index, pour l'anglais, je le fichier dans le dossier Wwwwroot, alors que pour le dossier de l'arabe, dans le dossier wwwwroot \ ar. Au niveau angulaire, j'ai défini le chemin vers "app/ar" vers mon composant d'origine et cette solution a parfaitement fonctionné.