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()
相关推荐
han_1 分钟前
JavaScript设计模式(十):模板方法模式实现与应用
前端·javascript·设计模式
二进制person2 分钟前
JavaEE进阶 --HTML+CSS+JavaScript 基础
javascript·css·html
fīɡЙtīиɡ ℡11 分钟前
【SpringAi最新版入门(二)】
java·javascript·css·人工智能·css3
西西学代码14 分钟前
查找设备页面(amap_map)
开发语言·前端·javascript
浩星21 分钟前
electron系列7之Electron + Vue 3:构建现代化桌面应用(上)
javascript·vue.js·electron
M ? A32 分钟前
Vue3 转 React 工具 VuReact v1.6.0 更新:useAttrs 完美兼容,修复模板迁移 / 类型错误
前端·javascript·vue.js·react.js·开源·vureact
低保和光头哪个先来36 分钟前
解决 ios 使用 video 全屏未铺满页面问题
前端·javascript·vue.js·ios·前端框架
每天吃饭的羊1 小时前
Node.js 创建可二次编辑的 HTML 文档并生成文件
开发语言·javascript·ecmascript
牛马1111 小时前
Flutter BoxDecoration border 完整用法
开发语言·前端·javascript
We་ct1 小时前
LeetCode 149. 直线上最多的点数:题解深度剖析
前端·javascript·算法·leetcode·typescript