【发布时间】:2026-01-17 19:20:06
【问题描述】:
我正在尝试通过实施官方 Angular 2 更改日志中指示的更改来更新 Angular 2 项目。
(如果您想了解详细信息,我完全完成了使用 Angular 2 版本 2.0.0-beta.13 构建的教程,现在想将其转换为当前最新的 Angular,即 2.0 版.0-rc.6.教程本身可以在Youtube找到,最终代码可以在GitHub找到。)
我被困在以下步骤:change log for Angular 2 version 2.0.0-beta.16 声明如下:
您还需要将依赖项“node_modules/zone.js/dist/fake-async-test.js”作为服务文件添加到您的 Karma 或其他测试配置中。
我不确定我是否完全理解这意味着什么,我也没有看到明显的实现方式。该项目的karma.conf.js 文件如下:
// Karma configuration
module.exports = function(config) {
config.set({
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '',
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['browserify', 'source-map-support', 'jasmine'],
// list of files / patterns to load in the browser
files: [
'test/init.js',
'src/**/*.spec.js'
],
// list of files to exclude
exclude: [
],
// preprocess matching files before serving them to the browser
// available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor
preprocessors: {
'test/init.js': ['browserify'],
'src/**/*.spec.js': ['browserify']
},
browserify: {
debug: true,
transform: ['babelify']
},
specReporter: {
maxLogLines: 5,
suppressErrorSummary: true,
suppressFailed: false,
suppressPassed: false,
suppressSkipped: true,
showSpecTiming: true
},
// test results reporter to use
// possible values: 'dots', 'progress'
// available reporters: https://npmjs.org/browse/keyword/karma-reporter
reporters: ['spec'],
// web server port
port: 9876,
// enable / disable colors in the output (reporters and logs)
colors: true,
// level of logging
// possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
logLevel: config.LOG_INFO,
// enable / disable watching file and executing tests whenever any file changes
autoWatch: true,
// start these browsers
// available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
browsers: ['PhantomJS'],
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits
singleRun: false,
// Concurrency level
// how many browser should be started simultanous
concurrency: Infinity
})
};
我怀疑解决方案将涉及对上述karma.conf.js 文件的更改,但也可能通过命令行npm install ... 或者更可能通过修改package.json 中的依赖项来安装npm 包。我不知道这是否相关,但教程的原始(即 Ang2-beta.13)package.json 将zone.js ^0.6.6 列为依赖项,而最新 Angular2(rc.6)的更改日志列出了zone.js ^0.6.17在其对等依赖项更新中。
我在哪里看过?好吧,我在这个预先存在的配置文件中没有看到这个新依赖项的明显位置,所以我怀疑它可能涉及这个项目以前不需要的配置属性。 questions asked by karma init 似乎太基本而无法相关。我查看了complete list of karma configuration options 并没有看到明显的位置(并且该页面甚至不包含“依赖”或“服务”等词)。我还查看了 files 和 plugins 的官方 Karma 文档,但都没有提供明显的解决方案。
那么,我该如何执行更改日志的要求,即如何“将依赖项 'node_modules/zone.js/dist/fake-async-test.js' 添加为 [my] Karma 中的服务文件”。 ..配置”?
【问题讨论】:
标签: javascript angular configuration npm karma-runner