【发布时间】:2021-06-17 11:23:12
【问题描述】:
我正在从 javascript 迁移到 typescript。
为了保持我的代码干净,我将我的代码分散在单独的文件中,但我在打字稿中遇到了问题
文件夹结构:
App
|- config
| |- passport.js
|- server.js
这样做在 javascript 中是完全有效的:
app.js(文件)
const passport = require('passport')
const config = require('./config/passport')(passport)
//all other express code
config.js(文件)
const config = (passport)=>{
//authentication login
}
module.exports = config
但是当我尝试在打字稿中做类似的事情时
app.ts(文件)
import express from 'express'
import config from './config/passport'
//all other express code
config.ts(文件)
const config = (passport)=>{
//authentication login
}
export default config
我收到此错误
参数 'passport' 隐含一个 'any' 类型
我知道我可以将passport:any 作为参数传递给配置函数,但我想在这里进行类型检查
我也试过
import passport from 'passport'
let passportType = typeof passport
config(passport : passportType)
但得到这个错误
'passportType' 指的是一个值,但在这里被用作一个类型。
【问题讨论】:
-
为什么需要传递一个可以自己轻松加载的普通模块句柄?
标签: node.js typescript passport.js passport-local