在看 typeScript的模块这个节的时候,我觉得这个导入导出是个非常神奇的事情。之前一般的js都是通过js标签的src属性来引入js文件的,从而加载进相应的js程变量,函数方法什么的。后来出现模块化的概念,从模块化这个名词又开始向命名空间这个概念转。简单的来讲,我觉得所谓的模块,其实就是每个单独的文件。我们要导入某个模块实际也就是引入某个文件夹一样,而这跟之前纯粹的通过js标签引入js文件应该是同一个道理,只是概念上有了改变。
在看typescript的官网文档的 模块导入导出的时候,讲到一个重新导出 ,我觉得很神奇,我开始觉得,只能在当前的文件里导出当前文件的内容,比如导出 变量,导出 语句的那些写法,都是在本模块文件里面导出本文件里的内容的。但是这里的 讲到的重新导出,我看他是意思好像是,能够在其自身的文件里控制导出其他模块里的内容。我觉得太神奇了。既然本文件里面导出的内容能被其他文件中相应的导出语句所改变,那名字一改,这导出的东西名称会不会有冲突?
而后来导入里面有个地方不是很理解。
import * as validator from "./ZipCodeValidator";let myValidator = new validator.ZipCodeValidator();
在这里 new 这个词我该怎样理解???
new配合构造函数的的调用 本来是实例化对象的意思,在这里我的理解只能是,通过new 他把整个引入的文件当成个对象,自然里面的 变量,函数方法什么的就成了他的属性了。所以才能这样写new validator.ZipCodeValidator();
慕桂英3389331
相关分类