我是角度2和打字稿的新手,我很难理解angular2装饰器和指令的内部结构。我开始更多地挖掘角度2代码,我几乎没有问题
1)为什么我在我的节点模块目录中看到像directives.d.ts这样的文件,而git-hub中的angular 2代码库只有directives.ts? (从打字稿文档中,我发现这些是打字稿类型定义文件,它们不是编译的一部分。)
2)如果使用typescript定义文件来使用不是用typescript编写的JavaScript库,为什么这些文件在angular2中使用,因为这完全是用typescript写的?
答案 0 :(得分:1)
您似乎已经回答了自己的问题
因为如果您导入了 source 文件,那么在编译应用程序时它会再次转换。我们不应该访问源typescript文件,因为它已经被转换为Javascript。因此,Angular提供定义文件,因此永远不会触及源。当我们编译时,我们只是编译定义文件。