作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在将 Bootstrap 添加到我的节点项目时遇到了一些问题。我通过 bower 安装了 bootstrap-sass-official,然后我添加了 gulp 任务来编译 bootstrap。
我运行了直接从控制台编译 bootstrap 的任务并成功完成。我的 gulpfile.coffee
gulp = require 'gulp'
$ = (require 'gulp-load-plugins')()
livereload = require 'gulp-livereload'
nodemon = require 'gulp-nodemon'
concat = require 'gulp-concat'
express = require 'express'
path = require 'path'
sass = require 'gulp-ruby-sass'
app = express()
gulp.task 'bootstrap-sass', =>
gulp.src './bower_components/bootstrap-sass-official/assets/stylesheets/**/*.scss'
.pipe $.plumber()
.pipe $.sass({
outputStyle: 'compressed'
sourceComments: 'map'
includePaths : ['./bower_components/bootstrap-sass-official/assets/stylesheets']
})
.on 'error', (err) =>
console.log err
.pipe gulp.dest 'dist/stylesheets/bootstrap'
gulp.task 'compass', =>
gulp.src './src/stylesheets/*.sass'
.pipe $.plumber()
.pipe $.compass {
css: 'dist/stylesheets'
sass: 'src/stylesheets'
}
.pipe gulp.dest 'dist/stylesheets'
# .pipe livereload()
gulp.task 'coffee', =>
gulp.src 'src/scripts/main.coffee', {read: false}
.pipe $.plumber()
.pipe $.browserify {
debug: true
insertGlobals: false
transform: ['coffeeify']
extensions: ['.coffee']
}
.pipe $.rename 'app.js'
.pipe gulp.dest 'dist/scripts'
.pipe livereload()
gulp.task 'images', =>
gulp.src './src/images/**/*'
.pipe gulp.dest './dist/images/'
.pipe livereload()
gulp.task 'templates', =>
gulp.src 'src/*.jade'
.pipe $.plumber()
.pipe $.jade {
pretty: true
}
.pipe gulp.dest 'dist/'
.pipe livereload()
gulp.task 'express', =>
app.use express.static(path.resolve './dist')
app.listen 1337
$.util.log 'Listening on port: 1337'
gulp.task 'watch', =>
livereload.listen()
gulp.watch 'src/stylesheets/*.sass', ['compass']
gulp.watch 'src/scripts/*.coffee', ['coffee']
gulp.watch 'src/*.jade', ['templates']
gulp.watch './src/images/**/*', ['images']
$.notify {message: "Reload"}
gulp.task 'default', ['images', 'watch', 'express', 'demon']
gulp.task 'demon', =>
nodemon {
script: 'dist/scripts/app.js'
env: {'NODE_ENV': 'development'}
nodeArgs: ['--debug=9999']
}
你知道如何解决这个问题吗?
最佳答案
不是使用 gulp 从 bootstrap-sass
中包含 **/*.scss
,而是创建一个“导入”bootstrap-sass< 的 SCSS 文件
文件通过 @import
语句。
这样做很重要,因为实际上需要包含 bootstrap-sass
文件的顺序,您可以使用 @import< 控制该顺序
语句。
例如,here's如何做到这一点的例子。请注意,app.scss
是包含其他所有内容的单个文件; app.scss
成为 Gulp 唯一需要处理的东西。
然后你的 gulp 命令会这样做:
gulp.src './app.scss'
.pipe blah blah sass stuff
.pipe gulp.dest 'dist/stylesheets/'
FWIW,我用来处理 SCSS 的 Gulp 任务是 styles:scss
任务 here .
关于coffeescript - 如何用 gulp 编译 bootstrap-sass?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26815089/
我是一名优秀的程序员,十分优秀!