2016-04-11 17 views
0

Tüm .styl dosyalarında kullanılabilecek bir işlev tanımlamaya çalışıyorum. Böylece örneğin, ben yazabilirsiniz:Genel işlevi ekran kalemlerine aktar

body 
    background-image STATIC('/dist/assets/myImage.jpg') 

çıkış gerektiği

body { 
    background-image: url('//localhost:3000/dist/assets/myImage.jpg') 
} 

benim yudum görev

gulp.task('stylus', function() { 
    // host is defined in our config settings 
    // i.e. for develpoment it will be "localhost:3000" 
    var host = require('../../config').host; 

    return gulp.src('src/main.styl') 
    .pipe(stylus({ 
     define: { 
     STATIC: function(file) { 
      return 'url("//' + host + file.val + '")'; 
     } 
     } 
    })) 
    .pipe(gulp.dest('build/dist/css')); 
}); 

İçinde Ancak, ben gulp stylus çalıştırdığınızda, tüm çıkış alıntı. İlk ve son tek teklifler olmadan tam yolu nasıl iade edebilirim?

body { 
    background-image: 'url("//localhost:3000/dist/assets/myImage.jpg")'; 
} 

cevap

0

Tüm stil dosyalarınızda aynı işleve sahip olmak için, Stylus işlevleri daha uygun olacaktır. Sen tanımlayabilirsiniz bir function in stylus olarak:

bodyCustomBg() 
    body 
    background-color white 

gibi işlevini kullanın: Ayrıca çok functions parametreleri geçirebilirsiniz

bodyCustomBg() 

. Bu işlevi içeren .styl dosyasını alacağınız veya gerektireceğiniz dosyalarda bulunur.