首先是在模块a.js中声明一个可导出(export)的数据结构,例如:
export class ModelInfo{
id: string;
name:string;
}
其次是在模块b中声明可导出的函数,该函数中有模块a的modelInfo类型参数.
函数体中对modelinfo对象进行赋值。
export let funcb(modelinfo:ModelInfo){
modelinfo.id = "a";
modelinfo.name = "b";
}
在模块c中导入模块b中的函数funcb,同时声明一个ModelInfo类型对象,执行模块b的函数。
import {funcb} from "./b";
let modelinfo:ModelInfo;
funcb(modelinfo);
函数执行完后的modelinfo可以在模块c中继续调用。
小结
有些参数本身也能起到“返回值”的作用,这不仅在ts中,在其他如python,c/c++中也可以如此使用。