一个工程化项目中怎么使用import_and_require
一个工程化项目中怎么使用 import_and_require
这两个及是 module 和 commonjs 的区别
可以参考这个
前言
在一起开发脚本过程中自己需要用到 node 中fs
chalk
两个模块,
起因
/* 本俩想着就是使用commonjs进行完成如下 */
const fs = require("fs");
const chalk = require("chalk");
/* 但是但是报错了~ 主要原因是chalk无法使用require导入 下面会讲这个根因哈 */
解决方案
于是乎,我就写了这篇文章去解决
❓:突然脑子不知道怎么了,想着为啥一个 js 文件不能同时使用 import 和 require 共同导入呢
💡:可能因为这是两个不同的规范吧,无法共存吧。。。
❓: 可是今天突然看到一个妹纸大佬写的文章里的 vite 配置文件
什么情况!!! 我的天 👁️🗨️ 插个眼 问作者了,等回复
💡:我去了我的 vite 配置项中,试了一下 将 path 的 import 导入改了 require 啥也没干 外加安装了一个
npm i --save-dev @types/node
解决 ts 报错,发现项目依旧可以运行!!
再次尝试
根因就是每次想
chalk
这东西的时候,都要迫使我把整个项目改一下,no no no ,最后想着这肯定有支持 commonjs 的版本吧,于是我就查了一下果不其然,我每次安装的都是5.*版本
降到4.*版本
就可以了 使用 require 语法正常导入!
小 tip
在package.json
中如果没有没有设置 type,那如果想使用 module 或 commonjs 两种不同的导入方式,可以使用对应的文件名后缀mjs
cjs
## 希望内容对你有帮助,如果有错误请联系我 q: 1911509826,感谢支持
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理