【问题标题】:Design pattern for one page in TypescriptTypescript中一页的设计模式
【发布时间】:2017-10-05 16:05:04
【问题描述】:

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

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

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 {
            // ...            
        }
    }
}

增加了1个文件,PublicCommons.ts,具有常用功能...

【问题讨论】:

  • 解决方案 #2。并且不要使用关键字module,它不是模块而是namespace

标签: oop typescript design-patterns


【解决方案1】:

TypeScript 乌托邦存在于模块中,它使所有内容井井有条,而不会影响全局范围。在这个理想的世界里,你会...

注册.ts

export function foo() {

}

//... other registration related code

login.ts

export function foo() {

}

//... other login related code

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

您的每个模块都使用 import 语句明确其依赖关系,例如:

import { foo } from './register';

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-31
    • 1970-01-01
    • 2011-02-25
    • 2020-10-15
    • 2019-11-08
    • 1970-01-01
    • 1970-01-01
    • 2019-08-11
    相关资源
    最近更新 更多