Angular 在角坐标系中放置效用函数的位置

Angular 在角坐标系中放置效用函数的位置,angular,Angular,这只是一个使用Angular的示例,假设我需要在组件中使用一个函数,在这种情况下,getDay函数将由事件调用 getDay() { switch (new Date().getDay()) { case 0: day = "Sunday"; break; case 1: day = "Monday"; break; case 2: day = "Tuesday"; break; c

这只是一个使用Angular的示例,假设我需要在组件中使用一个函数,在这种情况下,getDay函数将由事件调用

getDay()  {
  switch (new Date().getDay()) {
    case 0:
      day = "Sunday";
      break;
    case 1:
      day = "Monday";
      break;
    case 2:
       day = "Tuesday";
       break;
    case 3:
      day = "Wednesday";
      break;
    case 4:
      day = "Thursday";
      break;
    case 5:
      day = "Friday";
      break;
    case 6:
      day = "Saturday";
  }
}
由于我使用的是Typescript,我是否应该在components目录及其内部创建一个共享文件夹:

使用导出类FormattedateComponent创建一个组件,例如:formattate.component.ts,然后在那里添加我的函数并在我想要的地方导入

最佳做法是什么。

有两种方法:-

在类中创建静态方法:- 导出类DateHelper{ 静态工作日{ 切换新的Date.getDay{ 案例0: 天=星期日; 打破 案例1: 天=星期一; 打破 案例2: 天=星期二; 打破 案例3: 日=星期三; 打破 案例4: 天=星期四; 打破 案例5: 天=星期五; 打破 案例6: 天=星期六; } } } 有两种方法:

在类中创建静态方法:- 导出类DateHelper{ 静态工作日{ 切换新的Date.getDay{ 案例0: 天=星期日; 打破 案例1: 天=星期一; 打破 案例2: 天=星期二; 打破 案例3: 日=星期三; 打破 案例4: 天=星期四; 打破 案例5: 天=星期五; 打破 案例6: 天=星期六; } }
} 当我有类似的问题时,我会看看angular、material、rxjs或任何其他广泛使用的框架中的人是如何做的。对于您的情况,它可能是-只需为功能创建文件,并使用描述性名称导出函数。按功能组织代码是可以的。但不要创建大部分内容,例如utils.ts,尝试按功能组织。

当我有类似的问题时,我会看看angular、material、rxjs或任何其他广泛使用的框架中的人是如何做的。对于您的情况,它可能是-只需为功能创建文件,并使用描述性名称导出函数。按功能组织代码是可以的。但不要创建大部分内容,例如utils.ts,试着按功能组织。

我认为最好的做法是在公用事业服务/类中放置您的共享逻辑,而这正是团队需要的recommends@RachidO我从未见过angular团队推荐的公用事业服务或类。有链接吗?@bryan60,我称之为实用服务,但最终它只是一个可注射的service@RachidO我知道依赖注入是什么,自从angular v1之后,我从未见过angular团队专门针对实用程序服务的rec,因为它们更重要。过渡到TS/ES6使它们在IMO中变得有些多余和麻烦,因为它们通常是无状态的,并且本身不具有依赖性。因此,utilities.ts文件可以用更少的样板文件、潜在的更少开销和更小的捆绑包完成同样的事情,因为您只能导入所需的函数,而不是注入整个类。在我看来,最好的做法是让utilities服务/类放在共享逻辑的地方,而这正是angular团队所做的recommends@RachidO我已经从未见过angular团队推荐的公用事业服务或类别。有链接吗?@bryan60,我称之为实用服务,但最终它只是一个可注射的service@RachidO我知道依赖注入是什么,自从angular v1之后,我从未见过angular团队专门针对实用程序服务的rec,因为它们更重要。过渡到TS/ES6使它们在IMO中变得有些多余和麻烦,因为它们通常是无状态的,并且本身不具有依赖性。因此,utilities.ts文件可以用更少的样板文件、潜在的更少开销和更小的包完成同样的事情,因为您只能导入所需的函数,而不是注入整个函数class@AskashGarg如何使用typscript导入angular上的第一个选项,即从“/pathtoDateHelper.js”导入DateHelper,然后我需要像处理servicedependency注入时那样向构造中添加函数?例如,在构造函数getDay:DateHelper中,而不仅仅是使用函数this.getDay?只需导入类。像我上面说的那样使用它。构造函数中不需要。只需在上面导入并使用。实际上不需要静态类。您可以在一些date-utlities.ts中导出函数getDay{…}file@AskashGarg我如何使用typscript导入angular上的第一个选项,即从“/pathtoDateHelper.js”导入DateHelper,然后像处理servicedependency注入时一样向构造添加函数?例如在
e constructuregetDay:DateHelper,而不仅仅是使用函数this.getDay?只需导入类。像我上面说的那样使用它。构造函数中不需要。只需在上面导入并使用。实际上不需要静态类。您可以在一些date-utlities.ts文件中导出函数getDay{…}