ModuleJS 与 CommonJS 混用的两种解决方案

目录

方案一

方案二

[统一使用 ModuleJS](#统一使用 ModuleJS)

统一使用CommonJS

方案一

使用构建工具,webpack、vite等系列构建工具。这些构建工具底层则会将两种不同的系统模块语言转为同一种语言,然后代码也能正常执行。

方案二

如果你可以修改文件的文件后缀,那么就不需要借助任何第三方工具,直接这样做即可。

统一使用 ModuleJS
  • 文件扩展名为 .mjs
  • 将 require 替换为 import
  • 在 package.json 中设置 "type": "module"
javascript 复制代码
// const qrcode = require('qrcode-terminal')
import * as qrcode from 'qrcode-terminal'

qrcode.default.generate()
统一使用CommonJS
  • 将 import 替换为 require
  • 确保文件扩展名为 .cjs
  • 在 package.json 中设置 "type": "commonjs"
javascript 复制代码
const qrcode = require('qrcode-terminal')

qrcode.default.generate()
相关推荐
骑着蜗牛撵大象32729 分钟前
豆包 Seed 驱动的记账智能体:从拍票抽取到月报生成的全链路落地记录
java·前端·javascript·结构化输出·豆包seed·多模态识别·记账系统
溪语流沙31 分钟前
【Web全栈进阶】前端世界观:现代工具链与框架为什么存在
前端·javascript·vue.js
kyriewen1 小时前
我逐个测了 JSON.stringify 的 7 个坑:第 1 个就在丢数据
前端·javascript·程序员
song5011 小时前
React Native for OpenHarmony 实战:三方库 react-native-ratings 的鸿蒙化适配指南
javascript·react native·react.js·分类·harmonyos
朱包林2 小时前
iTerm2终端配置指南
linux·javascript·python·云原生·容器·kubernetes·云计算
谢亮_vipxieliang2 小时前
JavaScript this 指向完全指南:调用位置决定一切
开发语言·javascript·ecmascript
WeiXin_DZbishe3 小时前
基于Node.js的马拉松赛事管理系统的设计与实现-计算机毕设 附源码【课程设计】90211
java·javascript·vue.js·python·php·课程设计
西西学代码3 小时前
像素和颜色之间的转换(Flutter)
前端·javascript·flutter
时间海8713 小时前
对象键清洗之前,先拦住重名
javascript·后端
挖掘狂人4 小时前
Java 26 深度解析:一次“性能兑现 + 契约收紧”的版本
javascript·后端·性能优化