在Typescript中设计一个页面的模式

时间:2017-10-05 06:16:44

标签: oop typescript design-patterns

我在单页面应用程序中有一个应用程序。 我也在外面注册和登录。

我想知道我是否应该用于登录和注册以及密码恢复:

1.标准单身模式与班级。

export class Register {
    foo(): any {}
}

2.或者在Register.ts等中可能只有“导出函数foo”。?

export function foo: any {}

3.或者一切都保留在模块注册,模块登录?

module Publics {
    export module Register {
        export function foo(): any {
            // ...            
        }
    }
    export module Login {
        export function foo(): any {
            // ...            
        }
    }
}

这是另外一个文件,具有常用功能的PublicCommons.ts ......

1 个答案:

答案 0 :(得分:1)

TypeScript乌托邦可以在模块中找到,它可以保持整齐有序的组织,而不会影响全局范围。在这个理想的世界里,你会有......

regsister.ts

export function foo() {

}

//... other registration related code

login.ts

export function foo() {

}

//... other login related code

在这种情况下,您不需要任何名称空间(以前称为内部模块),因为您已经通过使用模块(以前称为外部模块)“比命名空间更好”。

每个模块都使用import语句显式显示其依赖项,例如:

import { foo } from './register';

您仍然可以选择将输出捆绑到单个文件中作为开发人员工作流程的一部分......或者您可以使用模块加载器在运行时保持模块的完整性。在需要时加载较小的文件,具有较小的可缓存性单位并不是一件坏事。