gulp + coffeescript로 편하게 프런트 개발 환경 구축
8848 단어 Node.jsgulpCoffeeScript
평소 집에서는 개발하지 않는 나이지만, 너무 어쩔 수 없어 회사에서는 개발할 수없는 소규모 앱이나 플러그인을 개발하고 싶은 경우가 있습니다.
이번에는 CoffeeScript + gulp을 이러한 집에서의 편의성 개발 환경으로 채택하여 개요 및 도입 방법을 기록했습니다.
CoffeeScript란?
CoffeeScript는 AltJS라는 자바스크립트의 고급 대체언어(소프트 JavaScript를 더 좋은 느낌으로 한 언어)의 하나입니다. AltJS에는 TypeScript, Dart, JAX 등 그 밖에도 몇 가지가 있습니다. 에서 가장 간단하게 기술할 수 있는 것을 선택했습니다. 덧붙여서 평상시의 업무에서는, 편의와는 거리가 먼 Google Closure를 이용하고 있습니다.
AltJS에 공통되는 것은 컴파일 후에 JS를 출력하는 점에서 브라우저는 결국 출력된 JS를 이용합니다. 라는 야심을 가지고 개발되고 있었습니다만, 2015년 3월에 그것을 포기하는 선언이 되었습니다. 유감이군요.
h tp // // ws. 다 rtぁg. 오 rg/2015/03/다 rt-후r-엔치레-우 b. HTML
gulp이란?
Node.js 기반의 빌드 툴입니다. CoffeeScript나 Sass를 컴파일하거나 lint하거나, js를 정리해 압축할 수 있습니다. 가볍기 때문에 선택했습니다.
개발 환경 구축
Node.js 설치
gulp을 사용하려면 먼저 Node.js를 설치하십시오.
htps : // 그래서 js. 오 rg/엔/
프로젝트 만들기
다음과 같은 구성으로 만듭니다.
Node.js 기반의 빌드 툴입니다. CoffeeScript나 Sass를 컴파일하거나 lint하거나, js를 정리해 압축할 수 있습니다. 가볍기 때문에 선택했습니다.
개발 환경 구축
Node.js 설치
gulp을 사용하려면 먼저 Node.js를 설치하십시오.
htps : // 그래서 js. 오 rg/엔/
프로젝트 만들기
다음과 같은 구성으로 만듭니다.
gulp 용 라이브러리 설치
# 基本セット
npm install --save-dev gulp gulp-coffee
# 圧縮用
npm install --save-dev gulp-concat gulp-uglify gulp-sourcemaps
# エラー処理
npm install --save-dev gulp-plumber gulp-notify
# その他ユーティリティー
npm install --save-dev gulp-util run-sequence
gulp 빌드 스크립트 작성
gulpfile은 CoffeeScript로 작성됩니다. CoffeeScript의 기본 문법은 다음을 참조하십시오.
h tp // w w. 뾰족하고 r. 네 t/우ぇb/루병라이 ls4/0901
gulpfile.coffee
# ライブラリのロード
gulp = require "gulp"
coffee = require "gulp-coffee"
concat = require "gulp-concat"
notify = require "gulp-notify"
util = require "gulp-util"
plumber = require "gulp-plumber"
sourcemaps = require "gulp-sourcemaps"
uglify = require "gulp-uglify"
runSequence = require "run-sequence"
# エラー時にGUIでポップアップ表示.
errorProcess =
errorHandler: notify.onError "Error: <%= error.message %>"
# CoffeeScriptをJSに変換し, src/jsに出力
gulp.task "coffee", ->
gulp.src "src/js/*.coffee" #対象ファイル
.pipe plumber errorProcess #エラー処理
.pipe coffee() #coffeeをjsにコンパイル
.on "error", util.log
.pipe gulp.dest "src/js/" #出力先
# ビルド物生成
gulp.task "js.build", ->
gulp.src [ "lib/js/*.js", "src/js/*.js" ]
.pipe plumber errorProcess
.pipe sourcemaps.init() # sourcemaps作成
.pipe concat "app.min.js" # ファイルを結合
.pipe uglify() #圧縮
.pipe sourcemaps.write "./" #app.min.js.mapの書き出し
.pipe gulp.dest "build/js/" #app.min.jsの書き出し
# CoffeeScriptのコンパイルからビルド物生成まで
gulp.task "build", -> runSequence "coffee", "js.build"
# CoffeeScriptファイルに変更があったら, jsを随時ビルド(結合圧縮まですると時間がかかるのでしない)
gulp.task "watch", ->
gulp.watch "src/js/*.coffee", ["coffee"]
빌드 및 모니터링
gulp 태스크 실행을 위해 package.json에 다음 속성을 추가합니다.
package.json
{
# ...
"scripts": {
"build": "gulp build",
"watch": "gulp watch"
},
# ...
}
빌드 및 모니터링
#ビルド
npm run build
#監視
npm run watch
gulp을 global install하고 직접 gulp를 차는 방법도 있지만 환경에 의존하기 때문에 위와 같이 npm을 통해 실행하는 것이 좋습니다.
Reference
이 문제에 관하여(gulp + coffeescript로 편하게 프런트 개발 환경 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ino-shin/items/9b5dd7c08d9a31cb773d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)