使用打字稿,我有2个功能,其中有完全相同的功能代码。因此,我决定将该通用功能放入其自己的文件中。
但是我像下面那样完成了-我想知道我是否应该创建一个具有该功能的抽象类(其他类很快就会加入其中)。还是像现在nice
一样保留它。
所以文件1:
import { sharedFunction } from "../common/actions";
export async function onTrigger(context: Context, documents: Resource[] | null): Promise<void> {
sharedFunction(aParamFile1, bParamFile1)
}
文件2:
import { sharedFunction } from "../common/actions";
export async function onTrigger(context: Context, documents: Resource[] | null): Promise<void> {
sharedFunction(aParamFile2, bParamFile2)
}
具有共享功能的动作文件:
export async function sharedFunction(input1: someType, input2: someType){
//Do something
}}
我想知道它是否应该是抽象类的原因是,我有几个要在file1
或file2
中使用的函数,我需要在{{1} }行的顶部。被视为import
设计还是可以接受?
我想知道是否可以避免使用untidy
吗?
但是另一方面,我不知道myAbstractClass.sharedFunction
函数如何将抽象类扩展为函数。
感谢任何想法/建议。
谢谢。
答案 0 :(得分:1)
您可以直接将导入更改为:
import * as shared from '../common/actions';
这将从该模块中导入所有内容。然后在这样导入的函数前加上shared.
。