gulpのメモ。ついでもbootstrap4も
17492 ワード
※node.jsとnpmがインストールされていることが前提
1、package.jsonを作成する。
プロジェクトディレクトリに移動して
package.jsonを作成
mkdir testdir // 「textdir」ディレクトリ作成
cd testdir // 「textdir」ディレクトリに移動
npm init // package.jsonを作成
npm init を入力すると色々質問されるが、何も入力せずとりあえずEnter!!
質問の回答がpackage.jsonの中身として反映される。
全部Enterを押してもdefaultの内容が入力される。
必要ならあとで書き換えれば良い。
全てEnterを押して作成されたpackage.json
{
"name": "testdir", //ディレクトリの名前
"version": "1.0.0", //バーション
"description": "", //詳細
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
2、ローカルにgulpをインストール
ローカルにgulpをインストール
npm install --save-dev gulp
いちお下記も見ておいてください。
npm
npm install パッケージ名 --save
//package.json の dependencies に追記される。
//カレントディレクトリの node_modules 以下にパッケージがインストールされる
npm install パッケージ名 --save-dev
//package.json の devDependencies に追記される。
//カレントディレクトリの node_modules 以下にパッケージがインストールされる
3、gulpfile.jsを作成
gulpfile.jsを作成
touch gulpfile.js
4、実行してみる
デフォルトタスクに複数のタスクを定義してみる。
gulpfile.js
var gulp require('gulp'); //gulpパッケージを読み込む
gulp.task('test1',function(){
console.log('タスク1');
});
gulp.task('test2',function(){
console.log('タスク2');
});
gulp.task('test3',function(){
console.log('タスク3');
});
実行その1
gulpfile.js
//guldfile.jsでさらに下記を追記
gulp.task('default',['test1','test2','test3']);
gulpコマンドだけで
gulp
それか、下記の形でも実行できる。
実行その2
実行
gulp タスク名
5、ファイルをコピーする
var gulp = require('gulp');
//タスクを定義
gulp.task('test4',function(){
// gulp.srcでコピーしたいファイルを指定
//.pipeつなぐ
// gulp.destでコピー先を指定
gulp.src('src/example.js').pipe(gulp.dest('./'));
});
//先ほどのタスク(test4)をデフォルトタスクに登録
gulp.task('default',['test4']);
6、順番にタスクを実行したい
順番を指定
var gulp = require('gulp');
//コピーしたいタスクを定義
gulp.task('test5',function(){
gulp.src('src/example.js').pipe(gulp.dest('.new/'));
});
//タスクの中にtest5タスクを登録して、test6タスクを定義
gulp.task('test6',['test5'],function(){
console.log('コピー完了');
});
//test6タスクをデフォルトタスクに登録
gulp.task('default',['test6']);
7、sassのコンパイルをしたい
bootstrap4のsassファイルと、自分で記述したsassファイルをまとめてコンパイルしてみる。
bootstrap4をinstall
npm install [email protected] -D
style.scssを作成
@import "node_modules/bootstrap/scss/bootstrap";
@import "style.scss" /*自分で記述したscssファイル*/
styles.scssをコンパイル
var gulp = require('gulp');
var sass = require('gulp-sass'); // gulp-sassパッケージを読み込む
gulp.task("sass", function() {
gulp.src("style.scss") //先ほどのstyle.cssを指定
.pipe(sass()) // sassのコンパイル
.pipe(gulp.dest("src")); //srcディレクトリの中にコンパイルされたcssが作成される
});
8、sassのコンパイルと一緒にベンダープレフィックスをつけて、圧縮(minify)もしたい
パッケージをインストール
npm install gulp-autoprefixer --save-dev #ベンダープレフィックスをつけてくれる
npm install gulp-clean-css --save-dev #圧縮してくれる
styles.scssをコンパイル
var gulp = require('gulp');
var sass = require('gulp-sass');
var autoprefixer = require('gulp-autoprefixer'); //gulp-autoprefixer読み込み
let cleanCSS = require('gulp-clean-css'); //gulp-clean-css読み込み
gulp.task("sass", function() {
gulp.src("dist/style.scss")
.pipe(sass())
.pipe(autoprefixer()) //ベンダープレフィックスをつける
.pipe(cleanCSS({compatibility: 'ie8'})) //圧縮
.pipe(gulp.dest("./src"));
});
Author And Source
この問題について(gulpのメモ。ついでもbootstrap4も), 我々は、より多くの情報をここで見つけました https://qiita.com/dokkoisho/items/5b93e78fcc5ade9a5471著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .