TypeScript模块

作者: 河的左岸 | 来源:发表于2017-07-27 23:07 被阅读0次

    一个ts文件相当于一个作用域,它里面的函数、变量、类和接口对其他文件不可见。除非使用export导出它们,而要调用它们则需要显式地import。

    1 导出方式

    直接导出(在声明的时候)

    export class Animal {
        abstrack eat():void; // 必须在派生类中实现
        move(meters: number = 0) {
            console.info(this.name + " moved " + meters + "m.");
        }
    }
    export const LOCATHION = "Shanghai";
    

    导出语句

    export class Animal {
        abstrack eat():void; // 必须在派生类中实现
        move(meters: number = 0) {
            console.info(this.name + " moved " + meters + "m.");
        }
    }
    export { Animal };
    

    导出整个模块

    export * from './Animal';
    export {Animal as Ani} from './Animal';
    

    2.导入

    导入和导出类似。

    3.模块的设计原则

    尽可能在顶层导出

    一个文件 Animal.ts尽可能只定义一个类,然后在它的顶层将它导出,封装性更好 。

    明确地列出导入的名字

    // AllAnimalModule.ts
    export class Dog { /* ... */ }
    export class Cat { /* ... */ }
    
    // Bus.ts
    import * as allAnimalModule from "./AllAnimalModule.ts";
    let x = allAnimalModule.Dog();
    

    使用模块包装进行扩展

    export class NgBootstrapModule {
        ...
    }

    相关文章

      网友评论

        本文标题:TypeScript模块

        本文链接:https://www.haomeiwen.com/subject/tjitlxtx.html