Typescript-使用抽象类简单共享函数
使用Typescript,我有两个函数,其中有完全相同的函数代码。因此,我决定将该公共函数导出到它自己的文件中 然而,我已经像下面这样做了——我想知道我是否应该创建一个具有该函数的抽象类(其他人很快就会加入其中)。还是像我现在所做的那样,保持它是一件很好的事情 因此,文件1:Typescript-使用抽象类简单共享函数,typescript,Typescript,使用Typescript,我有两个函数,其中有完全相同的函数代码。因此,我决定将该公共函数导出到它自己的文件中 然而,我已经像下面这样做了——我想知道我是否应该创建一个具有该函数的抽象类(其他人很快就会加入其中)。还是像我现在所做的那样,保持它是一件很好的事情 因此,文件1: import { sharedFunction } from "../common/actions"; export async function onTrigger(context: Context, document
import { sharedFunction } from "../common/actions";
export async function onTrigger(context: Context, documents: Resource[] | null): Promise<void> {
sharedFunction(aParamFile1, bParamFile1)
}
我想知道它是否应该是一个抽象类的原因是,假设我想在file1
或file2
中使用几个函数,我需要在顶部的import
行中列出它们。这被认为是不整洁的设计还是可以接受的?
我想知道是否可以避免这样做,而是做myAbstractClass.sharedFunction
但另一方面,我不明白onTrigger
函数如何扩展作为函数的抽象类
任何想法/建议都将不胜感激
谢谢。您可以将导入更改为以下内容,而不是引入人工名称空间类(您实际上并不需要):
import * as shared from '../common/actions';
这将从该模块导入所有内容。然后在导入的函数前面加上
shared.
谢谢-这看起来很有用。所以,避免使用你认为的抽象函数,因为我并没有真正创建一个新的对象?@userMod2:“抽象函数”?如果你需要一个类,那么写一个。但是,如果您只需要一个容器来容纳一组函数(一个名称空间),那么就不需要类:您已经有了module.Sorry,意思是抽象类。但你说的有道理。谢谢
export async function sharedFunction(input1: someType, input2: someType){
//Do something
}}
import * as shared from '../common/actions';