最佳解决方案,以多个角度[闭合]共享多个功能

问题描述 投票:-3回答:2

我需要一个在两个组件中共享的函数,如果我们在模板中使用此函数,我认为我们可以将该函数投入使用或使用自定义管道,但是最好的解决方案是什么?

angular
2个回答
0
投票

参考Angular docs,这是它们引入管道的方式:

介绍Angular管道,这是一种编写可以在HTML中声明的显示值转换的方法。

无论是否通过服务访问的功能均可用于任何形式的处理,访问API,进行复杂的处理等。如果需要在多个组件之间进行某些处理,则将该功能放入服务中并不是一个坏主意。 。

管道非常适合需要格式化某些数据(日期,在注入HTML之前进行一些字符串处理等)的格式,并且可以轻松地包含在多个页面中。

因此,请确定您的意图,并使用正确的组件来实现目标。如果要更改或编辑HTML中内容的显示方式,则可能需要使用管道。

如果它是复杂的,不平凡的或对HTML没有显示效果,则函数是适当的选择。

选项三是简单地创建另一个包含此功能的文件(以及所需的任何其他实用程序/帮助程序样式的函数),并根据需要导入。


0
投票

如果函数具有状态或依赖项,那么服务是最好的。

否则,我只用了一个简单的[business-area] .utility.ts文件,并将所有纯函数都保留在那里。

© www.soinside.com 2019 - 2024. All rights reserved.