>與ember.js
一起使用Gulp.js的關鍵優點>本文演示了Gulp.js如何通過自動化重複任務來顯著增強您的ember.js開發工作流程。 其中包括SCSS彙編,JavaScript和CSS縮小和串聯,文件監視,車把模板編譯以及JavaScript代碼優化。 我們將探討Essential Gulp.js插件的設置和配置以實現這一目標。
本指南對Gulp.js的熟悉程度。 如果您需要刷新,請參閱Sitepoint對Gulp.js.的簡介
標準ember.js開發挑戰>
ember.js項目通常涉及管理SCS,CSS,JavaScript和車把文件。 讓我們檢查常見的任務:
:核心Gulp.js軟件包。
:對於SCSS編譯(需要Ruby和Compass Gem)。
gulp
:用於更改上的文件監視和触發任務。 gulp-compass
:用於串聯CSS和JavaScript文件。 gulp-uglify
:用於編譯車把模板。 gulp-watch
gulp-concat
gulp-ember-handlebars
文件(如果不存在)。 > >本地安裝插件:
package.json
您的npm install gulp -g
npm install gulp gulp-compass gulp-uglify gulp-watch gulp-concat gulp-ember-handlebars --save-dev
var gulp = require('gulp'), compass = require('gulp-compass'), watch = require('gulp-watch'), handlebars = require('gulp-ember-handlebars'), uglify = require('gulp-uglify'), concat = require('gulp-concat');
定義Gulp Tasks
>讓我們定義通用操作的任務。 請記住,該文件路徑相對於gulpfile.js
。
dist/css
gulp.task('css', function() { return gulp.src('scss/*.scss') .pipe(compass({ sass: 'scss' })) .pipe(concat('main.min.css')) .pipe(gulp.dest('dist/css')); });
js/
gulp.task('templates', function() { gulp.src(['js/templates/**/*.hbs']) .pipe(handlebars({ outputType: 'browser', namespace: 'Ember.TEMPLATES' })) .pipe(concat('templates.js')) .pipe(gulp.dest('js/')); });
dist/js
gulp.task('scripts', function() { // ... (Your JavaScript file list here) ... return gulp.src(scriptSrc) .pipe(uglify({ mangle: false })) .pipe(concat('main.min.js')) .pipe(gulp.dest('dist/js')); });
gulp.task('watch', function() { gulp.watch('scss/*.scss', ['css']); gulp.watch('js/templates/**/*.hbs', ['templates']); gulp.watch('js/**/*.js', ['scripts']); });
開發:
gulp
gulp default
uglify
gulp.task('default', ['css', 'templates', 'scripts', 'watch']);
以上是使用Gulp.js改善您的ember.js工作流程的詳細內容。更多資訊請關注PHP中文網其他相關文章!