TypeScript-名前空間

ここに画像の説明を挿入

前書き

命名空间:
    在代码量较大的情况下,为了避免各种变量命名相冲突,可将相似功能的函数、类、接口等放置到命名空间内
    同Java的包、.Net的命名空间一样,TypeScript的命名空间可以将代码包裹起来,
	只对外暴露需要在外部访问的对象。命名空间内的对象通过export关键字对外暴露。
	命名空间和模块的区别:
    命名空间:内部模块,主要用于组织代码,避免命名冲突。
    模    块:ts的外部模块的简称,侧重代码的复用,一个模块里可能会有多个命名空间。
	使用namespace作为关键字 具体用法如下
	//把命名空间导出

コード

	export namespace A {
	    interface Animal {
	        name: string;
	        eat(key: string, value: string): void;
	    }
	    export class Dog implements Animal {
	        name: string = 'name';
	        eat(value: string): void {
	            console.log(value + '喜欢吃骨头');
	        }
	    }
	    export class Cat implements Animal {
	        name: string = 'name';
	        eat(key: string): void {
	            console.log(key + '喜欢吃鱼');
	        }
	    }
	}
	//把命名空间引入,以及使用
	import { A, } from './index5';
	
	const dog = new A.Dog();
	dog.eat("小狗");
	
	const cat = new A.Cat();
	cat.eat("小猫");

見てくれてありがとう!欠点がある場合は、アドバイスしてください

おすすめ

転載: blog.csdn.net/handsomezhanghui/article/details/107460487