Utiliser un modèle vierge ionique avec son gulpfile par défaut et exécuter:
ionic setup sass
Je peux construire l’application "s Sass, mais je voulais ajouter Compass. Alors, en utilisant Gulp, j’ai ajouté le code ci-dessous à mon gulpfile en fonction de gulp-compas exemples:
gulp.task( "compass", function( done ) {
gulp.src( "./scss/ionic.app.scss" )
.pipe( compass( {
config_file: "config.rb",
css: "www/css",
sass: "scss"
} ) )
.pipe( minifyCss( {
keepSpecialComments: 0
} ) )
.pipe( rename( { extname: ".min.css" } ) )
.pipe( gulp.dest( "./www/css/" ) )
.on( "end", done );
} );
Maintenant, cela semble fonctionner lorsque je construis en utilisant:
ionic compass
Mais quand je cours:
ionic serve
et cela passe par la construction de tout changement dans le Sass j'ai gardé une erreur:
Task "sass" is not in your gulpfile
Depuis que j'ai supprimé la tâche "sass" et que je l'ai remplacée par ma tâche "compas", j'ai remplacé toutes les références par une boussole. pourquoi est-il même au courant d'une tâche "sass"? Il n'y avait que trois références dans la valeur par défautgulpfile, mais le seul moyen de faire en sorte que cela fonctionne est de renommer ma tâche "compass" en "sass".
// renamed to sass from compass to remove build error
gulp.task( "sass", function( done ) {
gulp.src( "./scss/ionic.app.scss" )
.pipe( compass( {
config_file: "config.rb",
css: "www/css",
sass: "scss"
} ) )
.pipe( minifyCss( {
keepSpecialComments: 0
} ) )
.pipe( rename( { extname: ".min.css" } ) )
.pipe( gulp.dest( "./www/css/" ) )
.on( "end", done );
} );
Réponses:
1 pour la réponse № 1Renommez la tâche en sass
au lieu de compass
. Ionic possède des fonctionnalités sass intégrées qui supposent que la tâche gulp est appelée sass pour prendre en charge le rechargement en direct. Ceci est utile lorsque vous utilisez ionic serve
pour prévisualiser votre application et modifier le style peut être inséré dans le navigateur sans avoir à recharger la page, et le système d’Ionic dépend de la tâche en question.