You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js中如何实现单文件定义的函数在多文件中全局复用?

步骤1:修改checkIfLogin.js添加导出逻辑

根据你项目使用的模块规范二选一即可:

  • 如果你用的是Node.js默认CommonJS规范,在文件末尾添加:
module.exports = authCheck
  • 如果你用的是ES Module规范(package.json中配置了"type": "module"),在文件末尾添加:
export default authCheck

步骤2:在根目录index.js中统一注册导出

在主入口文件中完成导入后对外暴露,后续所有业务文件都可以直接从该入口引入:

CommonJS版本

// 按你的实际文件相对路径调整导入路径
const authCheck = require('./checkIfLogin.js')

// 在原有导出配置中追加authCheck
module.exports = {
  // 保留你原有的其他导出内容
  authCheck
}

ES Module版本

// 按你的实际文件相对路径调整导入路径
import authCheck from './checkIfLogin.js'

// 在原有导出配置中追加authCheck
export {
  // 保留你原有的其他导出内容
  authCheck
}

步骤3:在业务文件中调用

在dashboard.js、clients.js等需要鉴权的文件中,直接从根入口导入即可使用:

CommonJS版本

// 按当前文件到根目录index.js的相对路径调整导入路径
const { authCheck } = require('../index.js')

// 路由中直接作为中间件使用即可
router.get('/dashboard', authCheck, (req, res) => {
  // 业务逻辑
})

ES Module版本

// 按当前文件到根目录index.js的相对路径调整导入路径
import { authCheck } from '../index.js'

// 路由中直接作为中间件使用即可
router.get('/clients/list', authCheck, (req, res) => {
  // 业务逻辑
})

内容的提问来源于stack exchange,提问作者helplessdev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 16:27:01