暫無描述

Gruntfile.js 1.3KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. module.exports = function(grunt) {
  2. grunt.initConfig({
  3. pkg: grunt.file.readJSON('package.json'),
  4. concat: {
  5. options: {
  6. },
  7. dist: {
  8. src: ['src/*.js'],
  9. dest: 'dist/<%= pkg.name %>.js',
  10. },
  11. },
  12. uglify: {
  13. options: {
  14. banner: '// <%= pkg.name %> - v<%= pkg.version %> (<%= grunt.template.today("yyyy-mm-dd") %>)\n' + '// http://www.nraboy.com\n'
  15. },
  16. build: {
  17. src: ['src/*.js'],
  18. dest: 'dist/<%= pkg.name %>.min.js'
  19. }
  20. },
  21. jshint: {
  22. all: ['src/*.js']
  23. },
  24. clean: {
  25. js: ['dist/*.min.js']
  26. },
  27. karma: {
  28. options: {
  29. configFile: 'karma.conf.js'
  30. },
  31. continuos: {
  32. singleRun: true,
  33. autoWatch: false
  34. },
  35. dev: {}
  36. }
  37. });
  38. grunt.loadNpmTasks('grunt-karma');
  39. grunt.loadNpmTasks('grunt-contrib-uglify');
  40. grunt.loadNpmTasks('grunt-contrib-jshint');
  41. grunt.loadNpmTasks('grunt-contrib-clean');
  42. grunt.loadNpmTasks('grunt-contrib-concat');
  43. grunt.registerTask('test:dev', ['clean', 'jshint', 'karma:dev']);
  44. grunt.registerTask('test', ['clean', 'jshint', 'karma:continuos']);
  45. grunt.registerTask('build', ['clean', 'jshint', 'concat', 'uglify']);
  46. grunt.registerTask('default', ['clean', 'jshint', 'karma:continuos', 'concat', 'uglify']);
  47. };