如何获取我在IDE中使用javascript手动输入的源代码
注意:我正在使用angular2 rc4
我尝试使用Reflect.getMetadata
来获取它,但是我发现错误无法正常工作
///<reference path="../../../node_modules/reflect-metadata/reflect-metadata.d.ts"/>"
alert("---- " + Reflect.getMetadata('annotations', AppComponent)[0].template);
我在msg警告中未定义
在index.d.ts
/// <reference path="globals/core-js/index.d.ts" />
/// <reference path="globals/jasmine/index.d.ts" />
/// <reference path="globals/node/index.d.ts" />
答案 0 :(得分:2)
您需要为反射元数据库安装打字:
$ typings install reflect-metadata --ambient
? Found reflect-metadata typings for DefinitelyTyped. Continue? Yes
Installing reflect-metadata@~0.0.0 (DefinitelyTyped)...
reflect-metadata
└── (No dependencies)
这样您就可以使用Reflect
对象而不会出现编译错误。
修改强>
从模板网址加载模板内容:
@Component({
selector: 'my-app',
templateUrl: 'src/app.html'
})
export class App {
constructor(private http:Http) {
let templateUrl = Reflect.getMetadata('annotations', App)[0].templateUrl;
this.http.get(templateUrl).map(res => res.text()).subscribe(template => {
console.log('template = '+template);
});
}
}
请参阅此plunkr:https://plnkr.co/edit/Tk3hfba8ytsjvhCHSWSj?p=preview。