คำถามติดแท็ก gulp

Gulp เป็นระบบสร้าง JavaScript ซึ่งเป็นทาสก์รันเนอร์ที่ใช้ Node.js เช่น Grunt Gulp ใช้สตรีมและโค้ดโอเวอร์คอนฟิกสำหรับกระบวนการสร้างที่ง่ายและใช้งานง่ายมากขึ้น

9
ทุกครั้งที่ฉันทำงานอึกทึกฉันจะได้รับข้อผิดพลาดในการยืนยัน - ต้องระบุฟังก์ชันงาน
ฉันพยายามเรียกใช้คำสั่งด้านล่าง แต่น่าเสียดายที่ฉันพบข้อผิดพลาด $ gulp build ในเทอร์มินัลของฉันและฉันได้รับข้อผิดพลาดในการยืนยัน ฉันได้ถอนการติดตั้งโหนดและNPMและติดตั้งใหม่อีกครั้งโดยใช้ brew - ฉันจะถอนการติดตั้ง Node.js อย่างสมบูรณ์ได้อย่างไรและติดตั้งใหม่ตั้งแต่ต้น (Mac OS X)ด้วยขั้นตอนเหล่านี้ รุ่นโหนดของฉันคือ v10.5.0 และ NPM 6.1.0รุ่น ระบบของฉันคือMacOS High Sierra 10.13.2 assert.js:269 throw err; ^ AssertionError [ERR_ASSERTION]: Task function must be specified at Gulp.set [as _setTask] (bulkit/startup-kit/node_modules/undertaker/lib/set-task.js:10:3) at Gulp.task (startup-kit/node_modules/undertaker/lib/task.js:13:8) at Object.<anonymous> at Module._compile (internal/modules/cjs/loader.js:702:30) at Object.Module._extensions..js …
109 gulp  gulp-watch 

2
gulp globbing- วิธีดูทุกอย่างด้านล่างไดเรกทอรี
นี่คือคำถามโง่สวย แต่ผมยังไม่ได้รับจริงๆสามารถที่จะหาคำตอบที่น่าพอใจ: ฉันจะใช้อึก globbing เพื่อเลือกวิธีทุกไฟล์ในทุกไดเรกทอรีย่อยด้านล่างไดเรกทอรีหนึ่ง? ฉันพยายามแล้ว: './src/less' './src/less/' './src/less/*' ดูเหมือนจะไม่ได้ผล
108 glob  gulp 

5
Task Runner Explorer ไม่สามารถโหลดงานได้
ฉันใช้ VS2015 และ Gulp ฉันเปิด Task Runner Explorer และกดรีเฟรชสิ่งนี้จะปรากฏในบันทึก: Failed to run "C:\Projects\Test\Gulpfile.js"... cmd.exe /c gulp --tasks-simple Error: `libsass` bindings not found in C:\Projects\Test\node_modules\gulp-sass\node_modules\node-sass\vendor\win32-ia32-11\binding.node. Try reinstalling `node-sass`? at Object.sass.getBinaryPath (C:\Projects\Test\node_modules\gulp-sass\node_modules\node-sass\lib\extensions.js:148:11) at Object.<anonymous> (C:\Projects\Test\node_modules\gulp-sass\node_modules\node-sass\lib\index.js:16:36) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:364:17) at require …

4
Javascript: รับข้อมูล package.json ใน gulpfile.js
ไม่ใช่คำถามเฉพาะอึก ๆ แต่เราจะรับข้อมูลจากไฟล์ package.json ภายใน gulpfile.js ได้อย่างไร ตัวอย่างเช่นฉันต้องการรับโฮมเพจหรือชื่อและใช้ในงาน
101 javascript  gulp 

4
แก้ไขไฟล์ในตำแหน่ง (ปลายทางเดียวกัน) โดยใช้ Gulp.js และรูปแบบ globbing
ฉันมีงานอึกทึกที่พยายามแปลงไฟล์. scss เป็นไฟล์. css (โดยใช้ gulp-ruby-sass) จากนั้นวางไฟล์. css ที่เป็นผลลัพธ์ลงในที่เดียวกับที่พบไฟล์ต้นฉบับ ปัญหาคือเนื่องจากฉันใช้รูปแบบโกลบบิงฉันไม่จำเป็นต้องรู้ว่าไฟล์ต้นฉบับถูกเก็บไว้ที่ไหน ในโค้ดด้านล่างนี้ฉันกำลังพยายามใช้ gulp-tap เพื่อแตะเข้าไปในสตรีมและหาเส้นทางไฟล์ของไฟล์ปัจจุบันที่สตรีมอ่านจาก: gulp.task('convertSass', function() { var fileLocation = ""; gulp.src("sass/**/*.scss") .pipe(sass()) .pipe(tap(function(file,t){ fileLocation = path.dirname(file.path); console.log(fileLocation); })) .pipe(gulp.dest(fileLocation)); }); จากผลลัพธ์ของconsole.log(fileLocation)โค้ดดูเหมือนว่าโค้ดนี้จะทำงานได้ดี อย่างไรก็ตามไฟล์ CSS ที่ได้ดูเหมือนจะถูกวางไว้สูงกว่าที่ฉันคาดไว้หนึ่งไดเร็กทอรี ในที่ที่มันควรจะเป็นเส้นทางแฟ้มผลเป็นเพียงproject/sass/partialsproject/partials หากมีวิธีที่ง่ายกว่านี้ฉันจะต้องขอบคุณโซลูชันนั้นมากยิ่งขึ้น ขอบคุณ!
100 javascript  node.js  sass  gulp 

2
ใช้อึกเพื่อเลือกและย้ายไดเร็กทอรีและไฟล์
ฉันกำลังใช้ gulp เพื่อเรียกสคริปต์ทุบตีที่ล้างdist/ไดเร็กทอรีของฉันและย้ายไฟล์ที่เหมาะสมไปยังคลีนไดเร็กทอรี ฉันต้องการให้สิ่งนี้เสร็จสิ้นด้วยอึกเพราะฉันไม่แน่ใจว่าสคริปต์จะทำงานบนระบบไฟล์ที่ไม่ใช่ * nix จนถึงตอนนี้ฉันใช้โมดูล gulp-clean เพื่อล้างdist/ไดเร็กทอรี แต่เมื่อฉันพยายามย้ายไดเร็กทอรีที่ต้องการและไฟล์ไปยังโฟลเดอร์ dist ไดเร็กทอรีจะว่างเปล่า var gulp = require('gulp'), clean = require('gulp-clean'); gulp.task('clean', function(){ return gulp.src(['dist/*'], {read:false}) .pipe(clean()); }); gulp.task('move',['clean'], function(){ gulp.src(['_locales', 'icons', 'src/page_action', 'manifest.json']) .pipe(gulp.dest('dist')); }); gulp.task('dist', ['move']); การโทรgulp distส่งผลให้dist/ไดเร็กทอรีถูกเติมด้วยไดเร็กทอรีที่ถูกต้อง แต่ทั้งหมดว่างเปล่า $ ls dist/* dist/manifest.json dist/_locales: dist/icons: dist/page_action: ฉันจะคัดลอกไดเรกทอรีและเนื้อหาไปยังdist/โฟลเดอร์ได้อย่างไร
99 node.js  glob  gulp 

10
gulp.run เลิกใช้งานแล้ว ฉันจะเขียนงานได้อย่างไร?
นี่คืองานที่ประกอบขึ้นซึ่งฉันไม่รู้ว่าจะแทนที่ด้วยการอ้างอิงงานได้อย่างไร ... gulp.task('watch', function () { var server = function(){ gulp.run('jasmine'); gulp.run('embed'); }; var client = function(){ gulp.run('scripts'); gulp.run('styles'); gulp.run('copy'); gulp.run('lint'); }; gulp.watch('app/*.js', server); gulp.watch('spec/nodejs/*.js', server); gulp.watch('app/backend/*.js', server); gulp.watch('src/admin/*.js', client); gulp.watch('src/admin/*.css', client); gulp.watch('src/geojson-index.json', function(){ gulp.run('copygeojson'); }); }); บันทึกการเปลี่ยนแปลงที่เกี่ยวข้อง https://github.com/gulpjs/gulp/blob/master/CHANGELOG.md#35 [เลิกใช้ gulp.run]
98 javascript  gulp 

11
ไม่พบคำสั่ง Gulp หลังจากติดตั้ง
ฉันติดตั้งอึก (ทั่วโลก) และดูเหมือนว่าจะใช้งานได้เพราะมันรันโค้ดนี้: ├── tildify@0.2.0 ├── interpret@0.3.5 ├── pretty-hrtime@0.2.1 ├── deprecated@0.0.1 ├── archy@0.0.2 ├── minimist@0.2.0 ├── semver@2.3.2 ├── orchestrator@0.3.7 (stream-consume@0.1.0, sequencify@0.0.7, end-of-stream@0.1.5) ├── chalk@0.5.1 (escape-string-regexp@1.0.1, ansi-styles@1.1.0, supports-color@0.2.0, strip-ansi@0.3.0, has-ansi@0.1.0) ├── gulp-util@2.2.20 (lodash._reinterpolate@2.4.1, dateformat@1.0.8-1.2.3, vinyl@0.2.3, through2@0.5.1, multipipe@0.1.1, lodash.template@2.4.1) ├── liftoff@0.12.0 (extend@1.2.1, minimist@0.1.0, resolve@0.7.4, findup-sync@0.1.3) └── vinyl-fs@0.3.5 (graceful-fs@3.0.2, lodash@2.4.1, mkdirp@0.5.0, strip-bom@0.3.1, vinyl@0.2.3, …
97 macos  bash  terminal  npm  gulp 

3
กรรม: เรียกใช้ไฟล์ทดสอบไฟล์เดียวจากบรรทัดคำสั่ง
ดังนั้นฉันได้ค้นหาสิ่งนี้จนหมดแล้วพบคำตอบที่ "คล้ายกัน" ที่นี่ แต่ไม่ใช่สิ่งที่ฉันต้องการ ตอนนี้ถ้าผมต้องการที่จะทดสอบไฟล์เดียวกับกรรมที่ฉันต้องทำfit(), fdescribe()ไฟล์ในคำถาม ... อย่างไรก็ตามสิ่งที่ฉันต้องการคือสามารถเรียกใช้กรรมด้วยไฟล์ config และนำไปยังไฟล์เฉพาะดังนั้นฉันไม่จำเป็นต้องแก้ไขไฟล์เลยเช่น: karma run --conf karma.conf.js --file /path/to/specific/test_file.js เป็นไปได้ไหมที่จะทำเช่นนี้ หรือกับผู้ช่วยคนใด? (ใช้คำรามหรืออึก?)

6
วิธีรับรายการงานที่มีอยู่ในอึก
สวัสดีครับก่อนหน้านี้ผมใช้ในที่ฉันต้องการที่จะรู้ในงานที่ใช้สามารถใช้ได้grunt grunt --helpแต่เช่นเดียวกับการgulpใช้งานgulp --helpมันไม่แสดง คำสั่งที่จะรู้รายการงานที่มีอยู่ในอึกคืออะไร

1
ทำไม gulp.src ไม่ชอบที่จะส่งต่ออาร์เรย์ของพา ธ ที่สมบูรณ์ไปยังไฟล์
ฉันกำลังพยายามส่ง gulp.src อาร์เรย์ของไฟล์ที่ฉันต้องการให้จัดการ นี่คืออาร์เรย์ตามที่ระบุ ['bower_components/jquery/jquery.js', 'bower_components/superscrollorama/js/greensock/TweenMax.min.js', 'bower_components/superscrollorama/jquery.superscrollorama.js' ] ฉันพบว่า gulp.src นั้นดูเหมือนจะไม่เป็นเช่นนั้นและองค์ประกอบที่สามไม่ได้ผ่านเข้าสู่ปลายทางสุดท้าย ฉันพบว่าทุกอย่างทำงานได้ดีเมื่อฉันแนะนำอักขระตัวแทนเช่นนี้: ['bower_components/**/jquery.js', 'bower_components/**/js/greensock/TweenMax.min.js', 'bower_components/**/jquery.superscrollorama.js' ] แต่ทำไม? จะทำอย่างไรกับวิธีการทำงานของ globbing? ฉัน googled แต่หาไม่เจอ บางทีนี่อาจไม่ใช่จุดประสงค์ของการโกลว แต่มันไม่สมเหตุสมผลสำหรับฉันที่ควรจะทำงานในลักษณะนี้ ใครช่วยส่องบ้าง
94 arrays  node.js  glob  gulp 

2
หลายนามสกุลไฟล์ภายในไดเร็กทอรีเดียวกันโดยใช้ Gulp
ดังนั้นฉันจึงมีการตั้งค่า gulpfile.js ในโฟลเดอร์รูปภาพฉันมีภาพอยู่สองสามภาพบางภาพเป็น png, jpgs และ gif บางส่วน ฉันต้องการกำหนดเป้าหมาย pngs, jpgs และ gif ทั้งหมดในโฟลเดอร์รูปภาพ ฉันสามารถใช้ ** / * เพื่อกำหนดเป้าหมายทุกอย่างในโฟลเดอร์ แต่ฉันไม่ต้องการฉันต้องการให้เฉพาะเจาะจงกับประเภทไฟล์ ฉันสามารถทำได้และระบุไฟล์แต่ละประเภททีละไฟล์: return gulp.src('./images/*.jpg', './images/*.png', './images/*.gif') แต่เป็นการทำซ้ำตัวเองมากและดูเหมือนว่าควรจะมีวิธีที่ง่ายกว่านี้ ฉันกำลังมองหาสิ่งนี้: return gulp.src('./images/*.{png, gif, jpg}') แต่อนิจจาข้างต้นไม่ได้ผล (หรืออย่างน้อยก็ใช้ได้กับไฟล์ประเภทแรกในรายการเท่านั้น) ใครทราบวิธีการทำเช่นนี้ ขอบคุณ
94 javascript  gulp 

5
กำลังหาวิธีคัดลอกไฟล์ในอึกและเปลี่ยนชื่อตามไดเร็กทอรีหลัก
สำหรับแต่ละโมดูลฉันมีไฟล์บางไฟล์ที่ต้องคัดลอกไปยังไดเร็กทอรี build และกำลังมองหาวิธีลดโค้ดซ้ำจากสิ่งนี้: gulp.src('./client/src/modules/signup/index.js') .pipe(gulp.dest('./build/public/js/signup')); gulp.src('./client/src/modules/admin/index.js') .pipe(gulp.dest('./build/public/js/admin')); ถึงสิ่งนี้: gulp.src('./client/src/modules/(.*)/index.js') .pipe(gulp.dest('./build/public/js/$1')); เห็นได้ชัดว่าข้างต้นใช้ไม่ได้มีวิธีทำเช่นนี้หรือ npm ที่ทำสิ่งนี้อยู่แล้ว? ขอบคุณ
91 node.js  gulp 

2
การใช้ Grunt, Bower, Gulp, NPM กับ Visual Studio 2015 สำหรับโครงการ ASP.NET 4.5
Visual Studio 2015 มาพร้อมกับการสนับสนุนเครื่องมือเช่น Grunt, Bower, Gulp และ NPM สำหรับโครงการ ASP.NET 5 อย่างไรก็ตามเมื่อฉันสร้างโครงการ ASP.NET 4.5.2 โดยใช้ Visual Studio 2015 จะไม่ใช้เครื่องมือเหล่านี้ ฉันต้องการใช้ bower แทน nuget เพื่อจัดการแพ็คเกจฝั่งไคลเอ็นต์ ฉันสามารถค้นหาข้อมูลเกี่ยวกับการใช้เครื่องมือเหล่านี้กับ Visual Studio 2013 ได้ (ดูตัวอย่างคำถามนี้ ) แต่ฉันเดาว่าขั้นตอนจะแตกต่างกันสำหรับ Visual Studio 2015 เนื่องจากมีการสนับสนุนเครื่องมือเหล่านี้ในตัว

7
UglifyJS โยนโทเค็นที่ไม่คาดคิด: คีย์เวิร์ด (const) ด้วย node_modules
โครงการขนาดเล็กที่ฉันเริ่มใช้โมดูลโหนด (ติดตั้งผ่านnpm ) ที่ประกาศconstตัวแปร การรันและทดสอบโปรเจ็กต์นี้ทำได้ดี แต่ browserify ล้มเหลวเมื่อดำเนินการ UglifyJS โทเค็นที่ไม่คาดคิด: คำหลัก (const) นี่คือไฟล์ Gulp ทั่วไปที่ฉันประสบความสำเร็จในการใช้สำหรับโครงการอื่น ๆ ที่ผ่านมาโดยไม่มีปัญหานี้ (เช่นไม่มีโมดูลโหนดนั้น) gulpfile.js 'use strict'; const browserify = require('browserify'); const gulp = require('gulp'); const source = require('vinyl-source-stream'); const derequire = require('gulp-derequire'); const buffer = require('vinyl-buffer'); const uglify = require('gulp-uglify'); const sourcemaps = require('gulp-sourcemaps'); const …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.