gulpfile.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. 'use strict'
  2. var gulp = require('gulp')
  3. var webpack = require('webpack-stream')
  4. var mocha = require('gulp-mocha') // 用于单元测试
  5. var babel = require('gulp-babel') // 用于ES6转化ES5
  6. // var browserify = require('browserify');
  7. // var source = require('vinyl-source-stream');
  8. // var buffer = require('vinyl-buffer');
  9. var uglify = require('gulp-uglify')
  10. var rename = require('gulp-rename')
  11. var sourcemaps = require('gulp-sourcemaps')
  12. var gutil = require('gulp-util')
  13. // websdk.js
  14. // websdk.min.js
  15. // websdk.min.js.map
  16. gulp.task('sdk', ['sdk:umd', 'sdk:umd:min'])
  17. // websdk.js
  18. gulp.task('sdk:umd', function () {
  19. return gulp.src('./index.js')
  20. .pipe(webpack({
  21. output: {
  22. filename: 'websdk.browser.js',
  23. library: 'WebIM',
  24. libraryTarget: 'umd'
  25. }
  26. })
  27. )
  28. .pipe(gulp.dest('dist/'))
  29. })
  30. // websdk.min.js
  31. // websdk.min.js.map
  32. gulp.task('sdk:umd:min', ['sdk:umd'], function () {
  33. return gulp.src('./dist/websdk.browser.js')
  34. .pipe(sourcemaps.init({loadMaps: true}))
  35. .pipe(uglify())
  36. .pipe(rename('websdk.browser.min.js'))
  37. .on('error', gutil.log)
  38. .pipe(sourcemaps.write('./'))
  39. .pipe(gulp.dest('dist/'))
  40. })
  41. gulp.task('default', ['sdk'])
  42. //
  43. // gulp.task('watch', function() {
  44. // livereload.listen(); //要在这里调用listen()方法
  45. // gulp.watch('less/*.less', ['less']);
  46. // });