Javascript 理解TypeScript/Angular JS中定义的顺序
也许这是一个完全的noob问题,但我在Angular JS和TypeScript方面是一个完全的noob。我正在学习Angular的英雄教程(这里有一个Plunker:)。如果在文件的开头(在导入行之后)或结尾定义了Hero类,则运行正常;但是,如果它是在@Component和AppComponent之间定义的,那么JS在运行时会抛出以下异常:“在AppComponent上找不到任何指令注释”。我对TypeScript和/或Angular JS了解不够,无法令人满意地理解这是为什么。为什么订单如此重要?当英雄定义在中间时,我需要添加一些特殊的语法吗?谢谢Javascript 理解TypeScript/Angular JS中定义的顺序,javascript,angularjs,typescript,angular,Javascript,Angularjs,Typescript,Angular,也许这是一个完全的noob问题,但我在Angular JS和TypeScript方面是一个完全的noob。我正在学习Angular的英雄教程(这里有一个Plunker:)。如果在文件的开头(在导入行之后)或结尾定义了Hero类,则运行正常;但是,如果它是在@Component和AppComponent之间定义的,那么JS在运行时会抛出以下异常:“在AppComponent上找不到任何指令注释”。我对TypeScript和/或Angular JS了解不够,无法令人满意地理解这是为什么。为什么订单如
@组件
,或任何以@
符号开头的类似东西,是一种称为注释的特殊语言元素。它与紧跟其后的代码元素(类、变量等)相关联,并指定关于该代码元素的某种元数据。在这种情况下,@Component
指定它附加到的类是角度组件
当您在
@Component
和AppComponent
之间有Hero
类时,您声明Hero
,而不是AppComponent
,是一个角度分量,因为Hero
是紧跟在@Component之后的代码元素,这非常有意义。我把@Component看作是它自己的独立实体,而不是注释。我可能应该意识到这一点,因为JavaXD中的语法是相同的。打字稿对我来说太新了!看,我告诉过你这是个问题。非常感谢,今晚我可以睡觉了!