Les variables Sass ne sont pas lues dans le code

Bonjour,

En ajoutant plus de paramètres à mon thème, il est devenu évident que Discourse les ignorait.

Code :


#main-outlet-wrapper .sidebar-wrapper {
  @if $Full_Width == true {
    left: 10px;
  }
}

@if $Full_Width == true {
  :root {
    --d-max-width: 95%;
  }
  #main-outlet {
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5px;
    margin-bottom: 50px;
  }
}

Ce code ne fait rien, quelle que soit la valeur du paramètre.

Cependant, si je supprime == true, il sera toujours activé quoi qu’il arrive.

Cela semble également être le problème avec tout autre booléen ? J’ai lu la documentation de Sass et mon code correspond et cela ne fonctionne toujours pas.


div#main-outlet.wrap.not-found-container,
#main-outlet-wrapper {

  #main-outlet,
  .sidebar-wrapper {
    @if $Is_Background_Blurred {
      backdrop-filter: blur(3rem) !important;
      background-color: #0a0a0aa6 !important;

      input[type],
      .select-kit.combo-box .select-kit-header,
      .d-editor-textarea-wrapper,
      div.ac-wrap {
        background: transparent;
      }
    }

    @else {
      backdrop-filter: none !important;
      background-color: var(--secondary) !important;

      input[type],
      .select-kit.combo-box .select-kit-header,
      .d-editor-textarea-wrapper,
      div.ac-wrap {
        background: transparent;
      }
    }
  }
}

Merci pour toute aide.

J’ai rencontré le même problème il y a quelques semaines et j’ai conclu que la condition if SASS ne fonctionnait pas comme je le pensais. Je serais très heureux de savoir si une telle chose est possible cependant :

Avoir « if this site_setting == value then » dans un fichier SASS.

Je mets juste cela ici au cas où cela serait utile :

J’ai regardé ici avant de poster, et mon code est exactement le même.

Faire @if $var {} l’exécutera toujours quelle que soit la valeur, et @if $var == true {} ne l’exécutera jamais.

Avez-vous essayé :

@if $var == "true"

Il est possible que la valeur booléenne soit en fait une chaîne de caractères, j’ai déjà rencontré ce problème avec des composants de thème.

Oui, cela semble l’avoir résolu, étrange.

Génial, vous m’avez tous les deux aidé à résoudre un problème sur lequel j’avais abandonné dans l’un de mes composants de thème. :v:

Cela pourrait résoudre le problème de basculement du thème sombre dont nous avons discuté récemment, merci.

Cela ne fonctionnait pas tel quel.

Et voilà, Kris a aidé une population entière.