TS06 TS中使用模块

TS中的模块

1.1 模块的概念

模块的的概念(官方) :
关于术语的一点说明:请务必注意一点,TypeScript 1.5里术语名已经发生了变化。“内部模块”现在称做“命名空间”。
“外部模块”现在则简称为“模块”模块在其自身的作用域里执行,而不是在全局作用域里;
这意味着定义在一个模块里的变量 ,函数,类等等在模块外部是不可见的, 除非你明确地使用export形式之-导出它们。
相反,如果想使用其它模块导出的变量,函数,类,接口等的时候,你必须要导入它们,可以使用import形式之。

模块的概念(自己理解) :
我们可以把一些公共的功能单独抽离成-一个文件作为一个模块。
模块里面的变量函数类等默认是私有的,如果我们要在外部访问模块里面的数据(变量、函数、类),
我们需要通过export暴露模块里面的数据(变量、函数、类…)。
暴露后我们通过import 引入模块就可以使用模块里面暴露的数据(变量、函数、类…)。

1.2 暴露数据和引入数据

  • 方法1
/**
 * 新建一个db.ts 将数据库方法封装并且暴露出来
 * 暴露一个获取数据的方法
 */
export function getData():any[]{
    
    
    return [
        {
    
    
            name:'123',
            ahe:20
        },
        {
    
    
            name:'123425',
            age:30
        }
    ]
}

export function saveData():boolean{
    
    
    console.log('保存数据成功!')
    return true;
}

/**
 * 在index.ts文件中引入
 * 在这里引入我暴露的函数
 */

 import {
    
    getData} from './modules/db'

 console.log(getData());

  saveData();
  • 方法2
/**
 * 暴露一个获取数据的方法
 */
function getData():any[]{
    
    
    return [
        {
    
    
            name:'123',
            ahe:20
        },
        {
    
    
            name:'123425',
            age:30
        }
    ]
}

function saveData():boolean{
    
    
    console.log('保存数据成功!')
    return true;
}

export {
    
    getData, saveData}

/**
 * 在index.ts文件中引入
 * 在这里引入我暴露的函数
 */

 import {
    
    getData} from './modules/db'

 console.log(getData());

  saveData();
  • 方法3 export default(在一个模块里面只能使用一次)
/**
 * 使用export default 暴露数据
 */
function getData():any[]{
    
    
    return [
        {
    
    
            name:'123',
            ahe:20
        },
        {
    
    
            name:'123425',
            age:30
        }
    ]
}

function saveData():boolean{
    
    
    console.log('保存数据成功!')
    return true;
}

export default getData;

/**
 * export default 引入数据
 */

 import getData from './modules/db'


 console.log(getData());

猜你喜欢

转载自blog.csdn.net/qq_43955202/article/details/107698434
ts