ts命名空间和模块(暂时3.x版本ts有点问题)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/themagickeyjianan/article/details/87898037

1) Validate.ts

/**
 * 命名空间
 * 模块
 * es6模块
 */

/**
 * 定义模块(namespace)
 *   1.export导出
 */

namespace Validate {
    interface ValidateData {
        checkData(n: any): boolean;
    }

    export class StringValidate implements ValidateData{
        checkData(n: any): boolean {
            if(n && typeof n == "string"){
                return true;
            }
            return false;
        }
    }

    export class NumberValidate implements ValidateData{
        checkData(n: any): boolean {
            if(n && typeof n == "number"){
                return true;
            }
            return false;
        }
    }

    export default class ArrayValidate implements ValidateData{
        checkData(n: any): boolean {
            if(n && typeof n == "object"){
                return true;
            }
            return false;
        }
    }
}


/**
 * export/import
 */

/**
 * 三斜线指令 ///<reference path="xx.ts"/>
 *   1.使用三斜线指令导入依赖项
 */

使用

/// <reference path="./Validate" />

let m1 = new Validate.NumberValidate();
console.log(m1.checkData("1"));

猜你喜欢

转载自blog.csdn.net/themagickeyjianan/article/details/87898037
ts