我(大致)有以下目录设置
- project
...
- tasks/
- config/
grunt.json
- client/
- source_code_1/
- source_code_2/
- tests/
- Gruntfile.js
- karma.config.json
- node_modules
- package.json
并且正在使用 browserify 来捆绑 JS。
这种设置真的很痛苦,因为所有的 grunt/karma/browserify 代码都与服务器代码完全混合在一起。
我想要的是将所有内容移动到客户端目录中,例如
- project
...
- client
- tasks/
- config
- grunt.json
- src/
- source_code_1
- source_code_2
- tests
- node_modules
- Gruntfile.js
- karma.config.json
- package.json
就捆绑 JS 代码和测试的依赖项而言,这与 browserify 完美配合。
唯一的问题是 karma 在运行测试时不再能够找到 jasmine。我将日志级别设置为调试,看起来工作设置运行:
DEBUG [web-server]: serving: /project/node_modules/karma-jasmine/lib/jasmine.js
DEBUG [web-server]: serving: /project/node_modules/karma-jasmine/lib/adapter.js
DEBUG [web-server]: serving: /project/node_modules/karma-commonjs/client/commonjs_bridge.js
业力连接到浏览器后。
我没有在损坏的设置中看到这些,但任务和配置是相同的。唯一真正的区别是节点模块位于客户端目录中,源代码已移至新目录。