Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript-使用抽象类简单共享函数_Typescript - Fatal编程技术网

Typescript-使用抽象类简单共享函数

Typescript-使用抽象类简单共享函数,typescript,Typescript,使用Typescript,我有两个函数,其中有完全相同的函数代码。因此,我决定将该公共函数导出到它自己的文件中 然而,我已经像下面这样做了——我想知道我是否应该创建一个具有该函数的抽象类(其他人很快就会加入其中)。还是像我现在所做的那样,保持它是一件很好的事情 因此,文件1: import { sharedFunction } from "../common/actions"; export async function onTrigger(context: Context, document

使用Typescript,我有两个函数,其中有完全相同的函数代码。因此,我决定将该公共函数导出到它自己的文件中

然而,我已经像下面这样做了——我想知道我是否应该创建一个具有该函数的抽象类(其他人很快就会加入其中)。还是像我现在所做的那样,保持它是一件很好的事情

因此,文件1:

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';