[英]How use bootstrap-sass efficiently?
我目前正在使用npm查找模块,然后去使用bootstrap-sass 。 现在已经下载了模块,我正在寻找一种将scss编译到应用程序的静态文件夹中以及js引导程序文件中的解决方案。
但是根据模块的npmjs文档,我找不到一个简单的解决方案,它不是自己移动js文件,而是使用诸如node-sass之类的东西从node_modules编译scss引导文件。
正确使用此模块并可以自定义的最简单方法是什么?
编辑:
现在,我正在使用以下脚本/文件:
"compile-js": "browserify assets/static/js/main.js | uglifyjs > assets/static/js/bundle.js",
"compile-sass": "node-sass assets/scss/app.scss assets/static/css/app.css --output-style compressed"
app.scss
@import "../../node_modules/bootstrap-sass/assets/stylesheets/_bootstrap-sprockets.scss";
@import "../../node_modules/bootstrap-sass/assets/stylesheets/_bootstrap.scss";
main.js
global.jQuery = require("jquery")
const bootstrap = require('bootstrap-sass');
我以前从未使用过bootstrap-sass
,但是文档暗示使用预处理工具构建SCSS是使用此模块的先决条件。 尽管它不再是棚中最闪亮的工具,但Gulp仍然能够处理此任务,并能够将文件从node_modules
移至项目根目录。
以下是实现此目的的一种方法的细分:
sass
, css
和javascript
。 sass
文件夹中创建一个文件,并将其app.scss
。 打开并粘贴: @import './node_modules/bootstrap-sass/assets/stylesheets/_bootstrap.scss';
。 将文件转换为CSS后,所有的Bootstrap模块都将在那里。 在第1行的@import
语句下,可以随时编写所需的任何样式规则。 npm init
并在项目目录中包含package.json
文件,请在终端中运行npm install gulp -D
。 这将安装gulp(我选择的任务运行器!)。 npm install gulp-sass --save-dev
。 这将安装gulp插件,该插件会将Bootstrap SASS预处理为CSS。 gulpfile.js
gulpfile.js
: (注意:要使其正常工作,除非您在以下代码中更改其名称,否则您的SASS和CSS文件夹必须分别称为sass
和css
。)
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('sass-to-css', function () {
return gulp.src('./sass/*.scss')
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest('./css'));
});
gulp.task('javascript', function () {
return gulp.src('./node_modules/bootstrap-sass/assets/javascripts/bootstrap.min.js')
.pipe(gulp.dest('./javascript'));
});
gulp.task('default', ['sass-to-css', 'javascript']);
最后,运行命令gulp
在终端执行gulpfile,这将做两件事情:
css
文件夹中。 bootstrap.min.js
从node_modules
复制到项目的javascript
文件夹中。 当然,不要忘记在HTML中链接到这些资产。
我即时提取了这个gulpfile,它可以在我的机器上运行,但是如果您决定尝试这种方法,请随时询问是否有任何错误。 祝您项目顺利。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.