web-dev-qa-db-fra.com

get / set est déconseillé en faveur de la commande config

En utilisant angular-cli sur la ligne de commande, j'ai exécuté:

ng set defaults.styleExt styl

définir le style par défaut sur Stylus et j'ai obtenu cette réponse:

get/set est déconseillé en faveur de la commande config

Je souhaite modifier l'extension de style sur un projet EXISTING pour utiliser SCSS. Comment puis-je faire cela en utilisant la commande config? Où se trouve la documentation pour ng config?

J'utilise Angular CLI v6.0.0

ng aide dit:

config Obtenir/définir les valeurs de configuration

mais n'élabore pas. Merci

29
danday74

Pour Angular 6, vous voulez utiliser la commande suivante:

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

Ceci ajoutera automatiquement la section "schémas" halfer mentionnée au fichier angular.json.

Voici la documentation officielle: https://github.com/angular/angular-cli/wiki/stories-css-preprocessors

21
Mr Shantastic

OK j'ai fait un diff sur un projet généré avec:

ng new --style=styl PROJECT_NAME

et le même sans le drapeau --style et les différences dans le fichier de configuration angular.json sont représentés dans les 2 fichiers .png joints.

En utilisant ces diffs, j’ai apporté manuellement les modifications à angular.json comme suit:

(1) Changer projects.PROJECT_NAME.schematics comme suit:

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

(2) Changer projects.PROJECT_NAME.architect.build.options.styles comme suit:

"styles": [                                                                                  
    "src/styles.styl"                                                                          
]

(3) Changer projects.PROJECT_NAME.architect.test.options.styles comme suit:

"styles": [                                                                                  
  "styles.styl"                                                                              
]                                                                                           

(4) Renommez src/styles.css en src/styles.styl

Vos composants existants continueront volontiers à utiliser .css mais de nouveaux composants seront désormais générés avec .styl des dossiers.

Diffs au format PNG comme suit:

enter image description here

...

enter image description here

23
danday74

ng config projects.PROJECT_NAME.schematics.@schematics/angular:component '{ styleext: "scss"}'

pour un projet spécifique ou pour la valeur par défaut pour tous les projets

ng config schematics.@schematics/angular:component '{ styleext: "scss"}'

7
George Wilson