一个工程化项目中怎么使用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,感谢支持