我似乎无法对Angular2.0进行测试。每次我使用注入器装饰器时,我都会得到一个关于缺少文件/填充程序的错误。当使用类装饰器时,需要reflect-metadata填充;
我试着用我的方式导入它
import {CalendarBuilder} from './CalendarBuilder';
import 'reflect-metadata';
import 'zone.js'但是没有天使说没有喜欢。
这是我的包的内容-一个修改过的AngularExample,它需要修剪。有人能帮帮忙吗?
{
"name": "angular2-quickstart",
"version": "1.0.0",
"scripts": {
"test": "live-server --open=app/unit-tests.html",
"tsc": "tsc",
"tsc:w": "tsc -w",
"lite": "lite-server",
"go": "concurrent \"npm run tsc:w\" \"npm run lite\" "
},
"license": "ISC",
"dependencies": {
"angular2": "2.0.0-alpha.53",
"chai": "^3.4.1",
"es6-promise": "^3.0.2",
"es6-shim": "^0.33.3",
"gulp": "^3.9.0",
"reflect-metadata": "^0.1.2",
"rxjs": "5.0.0-alpha.14",
"systemjs": "0.19.6",
"underscore": "^1.8.3",
"zone.js": "^0.5.8" },
"devDependencies": {
"concurrently": "^1.0.0",
"es6-shim": "^0.33.13",
"gulp-jasmine": "^2.2.1",
"gulp-mocha": "^2.2.0",
"jasmine-core": "2.4.1",
"jspm": "^0.16.18",
"lite-server": "^1.3.1",
"live-server": "^0.9.0",
"requirejs": "^2.1.22",
"system-npm": "^0.4.2",
"typescript": "^1.7.3"
}
}发布于 2015-12-17 18:57:13
我通过导入npm包并引用测试顶部的类型定义解决了这个问题:
/// <reference path="../../type-definitions/reflect-metadata.d.ts"" />
require("reflect-metadata");发布于 2015-12-17 11:34:57
您可以通过包含随Angular 2提供的多边形填充来解决缺少zone.js和reflect-metadata的问题。将以下代码放入index.html文件中:
<script src="../node_modules/angular2/bundles/angular2-polyfills.min.js"></script>您可能需要更改路径以适合您的特定设置,但重要的是要知道该脚本位于node_modules文件夹的angular2/bundles部分。
https://stackoverflow.com/questions/34322548
复制相似问题