接触typescript不久,现需要把以前的项目用ts重写一遍,遇到一个问题:
项目中db的orm都需要实例化才能使用,说明比较困难,请看原js代码:
//const Redis = require('redis')
let initRedis = function(port, host){
return new Promise((success, fail) => {
module.exports.redis = Redis.createClient(port, host);
success();
})
}
以下为我转换的ts代码:
const initRedis = function (port:number, host:string): Promise<void> {
return new Promise((success,fail)=>{
export let redis = Redis.createClient(port, host);
success();
})
}
遇到的错误:
error TS1184: Modifiers cannot appear here.
请问 如何才能正确的在执行initRedis方法后再导出redis?
雷雷
使用
雷雷这个是做不到的。
Typescript的模块是标准符合 ES6 的模块标准, import 和 export 都是static的。
不过你可以使用类似下面的代码来做一些workaround。
可以参考这里 https://blogs.msdn.microsoft....
2.4是已经支持了,等下班回家给你写个范例