2014-07-09 01:45:53 +08:00
|
|
|
module.exports = function (grunt) {
|
|
|
|
|
2014-07-09 06:14:04 +08:00
|
|
|
grunt.initConfig({
|
|
|
|
|
|
|
|
jshint: {
|
|
|
|
options: {
|
|
|
|
reporter: require('jshint-stylish'),
|
|
|
|
jshintrc: true
|
|
|
|
},
|
|
|
|
build: {
|
|
|
|
src: ['gruntfile.js', 'tasks/*.js']
|
|
|
|
},
|
|
|
|
src: {
|
|
|
|
src: 'src/**/*.js'
|
|
|
|
},
|
|
|
|
test: {
|
|
|
|
src: 'test/*/specs/*.js'
|
|
|
|
}
|
|
|
|
},
|
|
|
|
|
|
|
|
karma: {
|
|
|
|
options: {
|
|
|
|
frameworks: ['jasmine', 'commonjs'],
|
|
|
|
files: [
|
|
|
|
'src/**/*.js',
|
|
|
|
'test/unit/specs/*.js'
|
|
|
|
],
|
|
|
|
preprocessors: {
|
|
|
|
'src/**/*.js': ['commonjs'],
|
|
|
|
'test/unit/specs/*.js': ['commonjs']
|
|
|
|
},
|
|
|
|
singleRun: true
|
|
|
|
},
|
|
|
|
browsers: {
|
|
|
|
options: {
|
|
|
|
browsers: ['Chrome', 'Firefox'],
|
|
|
|
reporters: ['progress']
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
|
|
|
|
browserify: {
|
|
|
|
options: {
|
|
|
|
bundleOptions: {
|
|
|
|
standalone: 'Vue'
|
|
|
|
}
|
|
|
|
},
|
|
|
|
build: {
|
|
|
|
src: ['src/vue.js'],
|
|
|
|
dest: 'dist/vue.js'
|
|
|
|
},
|
|
|
|
watch: {
|
|
|
|
src: ['src/vue.js'],
|
|
|
|
dest: 'dist/vue.js',
|
|
|
|
options: {
|
|
|
|
watch: true,
|
|
|
|
keepAlive: true
|
2014-07-09 01:45:53 +08:00
|
|
|
}
|
2014-07-09 06:14:04 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
grunt.loadNpmTasks('grunt-contrib-jshint')
|
|
|
|
grunt.loadNpmTasks('grunt-karma')
|
|
|
|
grunt.loadNpmTasks('grunt-browserify')
|
2014-07-09 01:45:53 +08:00
|
|
|
|
2014-07-09 06:14:04 +08:00
|
|
|
grunt.registerTask('unit', ['karma:browsers'])
|
|
|
|
grunt.registerTask('watch', ['browserify:watch'])
|
|
|
|
grunt.registerTask('build', ['browserify:build'])
|
2014-07-09 01:45:53 +08:00
|
|
|
|
|
|
|
}
|