156 votes

Angular-cli de css à scss

J'ai lu la documentation qui dit que si je veux utiliser scss je dois exécuter la commande suivante:

 ng set defaults.styleExt scss
 

Mais quand je fais cela et crée ce fichier, je reçois toujours cette erreur dans ma console:

 styles.bundle.js:33Uncaught Error: Module build failed: Error: ENOENT: no such file or directory, open '/Users/Egen/Code/angular/src/styles.css'(…)
 

Comment puis-je réparer ça?

314voto

Chic Points 3506

Angulaire 6 vérifiez la documentation Officielle

Remarque: Pour @angular/cli versions antérieures à la version 6.0.0-beta.6 utilisation ng set à la place de ng config.

Pour les projets existants

Dans un angulaires-cli projet qui a été mis en place avec la valeur par défaut css styles que vous aurez besoin de faire quelques petites choses:

  1. Changer le style par défaut de l'extension à l' scss

Modifier manuellement .angulaire de la cli.json (Angulaire 5.x et plus) ou angulaire.json(Angulaire 6+) ou exécutez:

ng config defaults.styleExt=scss
  1. Renommer votre .css fichiers d' .scss (c'est à dire les styles.css et app/app.composante.css)

  2. Point de la CLI pour trouver des styles.scss

Modifier manuellement les extensions de fichier dans apps[0].styles angulaire.json

  1. Point les composants de trouver votre nouveau style de fichiers

Modifier l' styleUrls dans vos composants pour correspondre à votre nouveau fichier de noms

Pour de futurs projets

@Serginho mentionné, vous pouvez définir le style de l'extension lors de l'exécution de l' ng new commande

ng new your-project-name --style=scss

Si vous souhaitez définir la valeur par défaut pour tous les projets que vous créez dans l'avenir, exécutez la commande suivante:

ng config --global defaults.styleExt=scss

60voto

Jose Orihuela Points 531

À partir de ng6, ceci peut être accompli avec le code suivant ajouté à angular.json au niveau racine:

Changer manuellement en .angular.json :

 "schematics": {
  "@schematics/angular:component": {
    "styleext": "scss"
  }
}
 

37voto

BALA Points 415

Ouvrir le fichier angular.json

1.change de

"schematics": {}

à

 "schematics": {
           "@schematics/angular:component": {
                   "styleext": "scss"       
             }  
  }
 
  1. changer de (à deux endroits)

"src/styles.css"

à

"src/styles.scss"

puis vérifiez et renommez tous les .css fichiers et mettez à jour les fichiers Component.ts styleUrls à partir de .css to .scss

13voto

Franklin Pious Points 1291

Pour angulaire 6,

 ng config schematics.@schematics/angular:component.styleext scss
 

note: @ schematics / angular est le schéma par défaut pour l'interface de ligne de commande angulaire

11voto

Angel Roma Points 169

Intégration du préprocesseur CSS pour Angular CLI: 6.0.3

Lorsque vous générez un nouveau projet, vous pouvez également définir l’extension souhaitée pour les fichiers de style:

 ng new sassy-project --style=sass
 

Ou définissez le style par défaut sur un projet existant:

 ng config schematics.@schematics/angular:component.styleext scss
 

Documentation CLI angulaire pour tous les préprocesseurs CSS principaux

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X