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

Node.js中如何导出名称含特殊字符的模块?

在Node.js中导出含特殊字符的名称

当你需要导出包含特殊字符(比如连字符-)的名称时,直接写未加引号的别名会触发语法错误——这类字符不属于JavaScript合法标识符的范畴。以下是两种可行的解决方法:

ES模块(ESM)写法

将含特殊字符的别名用引号包裹,明确告诉引擎这是一个导出名称而非标识符:

export { default as 'update-rfnsa-task' } from './update-rfnsa-task';

如果是从模块导入后再导出,也可以这样写:

import task from './update-rfnsa-task';
export { task as 'update-rfnsa-task' };

对应的导入方式

导入时同样需要用引号包裹名称,再通过as重命名为合法标识符使用:

import { 'update-rfnsa-task' as updateRfnsaTask } from './your-module.js';

// 或者通过模块对象的属性访问
import * as taskModule from './your-module.js';
const updateRfnsaTask = taskModule['update-rfnsa-task'];

CommonJS写法

如果你的Node.js项目使用CommonJS规范,直接通过module.exports的属性赋值即可:

module.exports['update-rfnsa-task'] = require('./update-rfnsa-task').default;

对应的导入方式

const taskModule = require('./your-module.js');
const updateRfnsaTask = taskModule['update-rfnsa-task'];

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 12:42:08