Angular @Component在导出类的单独文件中

时间:2017-11-23 08:03:39

标签: angular typescript angular-components

使用angularjs,我们学会了像这样构建代码。

item.module.js:

angular.module('name', [ deps ] )

item.component.js

angular.module('name')
  .component({ declaration, controller: 'controller', template: template})

item.controller.js

angular.module('name')
  .controller('controller', code..);

item.html

   <html>

但是angular 一个组件在它的控制器

的单个文件中声明
@Component({ templateUrl: template })
export class BlaComponent {}

有没有办法把这两个声明放在单独的文件中? 这是否需要(亲&#c / s)

奖金问题(我还在谷歌搜索这个问题):是否有大型项目和文件结构的适当指南?

2 个答案:

答案 0 :(得分:1)

@Component只是一个包含该类元数据的装饰器。换句话说,它只是以更优雅的方式为您的课程定义内容。

  

@Component函数获取配置对象并将其转换为附加到组件类定义的元数据。 Angular在运行时发现了这个元数据,因此知道如何做“正确的事情”。

Read more here

Angular2 +中没有控制器,但是类。换句话说,你没有将装饰器与类分开。

检查Official Angular 2 Styleguide Application Structure以了解如何构建代码。还要检查Angular CLI项目以增强应用程序开发。请注意,Angular CLI使用官方Angular 2样式指南和约定,非常方便,而且它为您提供了可以轻松继续扩展项目的基本结构。

答案 1 :(得分:1)

我们在团队中使用official style guide,我们发现它非常适合我们的需求。

回答你的问题,你不能将@Component decorator从它的类中拆分而你真的不需要。您可能仍然将模板和样式放在单独的文件中,实际上是officially recommended in this section