【发布时间】:2015-03-13 14:34:47
【问题描述】:
我有一个 React 应用程序,我正在通过 Grunt 对其进行转换、丑化和浏览。我的 grunt 文件看起来像这样......
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
browserify: {
dist: {
files: {
'./Scripts/build/App.js': ['./Scripts/src/**/*.js']
},
options: {
browserifyOptions: {
debug: true
},
transform: [ require('grunt-react').browserify ],
ignore: './Scripts/src/**/*-test.js'
}
}
},
uglify: {
my_target: {
files: {
'./Scripts/build/App-min.js': ['./Scripts/build/App.js']
}
}
},
watch: {
scripts: {
files: ['./Scripts/src/**/*.js'],
tasks: ['browserify', 'uglify'],
options: {
spawn: false
},
},
},
})
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-browserify');
grunt.loadNpmTasks('grunt-contrib-watch');
}
您会注意到 browserify 任务的 ignore 属性告诉它忽略文件名中带有 -test.js 的任何文件,原因是我的测试直接存储在我正在测试的文件旁边的文件夹中(看起来在查看 React Flux 示例时成为惯例)并且我不希望将测试文件捆绑到我的 app.js 文件中。谁能告诉我我是否做错了,因为到目前为止它似乎根本不起作用?测试文件被捆绑到 app.js 中,然后我收到有关未定义 jest 的控制台错误。
【问题讨论】:
标签: javascript reactjs browserify grunt-browserify